当前位置: 首页 > news >正文

【工作篇】软件工程师的知识基础(持续更新)

目录

1. linux 知识篇


1. linux 知识篇

1. Linux API 是什么

Linux API 是指 Linux 操作系统 提供的应用程序接口,用于与操作系统进行交互。它包含了一系列的函数、系统调用、库函数和数据结构,用于实现各种系统级的操作,如文件操作、进程管理、网络通信等。

常见的 Linux API 包括 POSIX 标准定义的接口、系统调用(如 openreadwrite 等)、网络套接字 API(如 socketbindlisten 等)、进程管理 API(如 forkexecwaitpid 等)等。

总的来说,Linux API 是开发者与 Linux 操作系统交互的桥梁,为应用程序的开发提供了丰富的功能和接口。

【简单示例】假设要创建一个简单的C程序,在Linux上创建一个文本文件并写入一些内容。可以使用Linux API中的函数来实现

#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>int main() {// 创建或打开一个文件,如果不存在则创建,如果存在则截断为0int fd = open("example.txt", O_CREAT | O_WRONLY | O_TRUNC, 0644);if (fd == -1) {perror("open");exit(EXIT_FAILURE);}// 写入内容到文件const char *text = "Hello, Linux API!\n";ssize_t bytes_written = write(fd, text, strlen(text));if (bytes_written == -1) {perror("write");close(fd);exit(EXIT_FAILURE);}// 关闭文件if (close(fd) == -1) {perror("close");exit(EXIT_FAILURE);}printf("File 'example.txt' created and written successfully.\n");return 0;
}

该程序使用了几个Linux API函数:

  1. open():用于打开或创建一个文件,返回一个文件描述符(file descriptor),如果出错则返回-1。
  2. write():用于将数据写入文件,接受文件描述符、数据指针和数据长度作为参数,返回写入的字节数,如果出错则返回-1。
  3. close():用于关闭文件,接受文件描述符作为参数,返回0表示成功,-1表示失败。

这个示例演示了如何使用Linux API来创建一个文件并写入内容。通过调用这些函数,可以直接与Linux操作系统进行交互,而不需要了解底层实现细节。

http://www.lryc.cn/news/349244.html

相关文章:

  • 知识付费系统开源方案,教育机构如何利用朋友圈做转介绍?
  • c++20 std::reinterpret_cast、std::bit_cast、std::static_cast
  • PHP单独项目启动演示
  • vscode 通过ssh 远程执行ipynb +可以切换conda env
  • ASP.NET银行大厅自助信息系统的开发与实现
  • 学习Vue3中reactive
  • 【Transformer-BEV编码(10)】CVPR2021 PYVA 第一个明确提到 cross-attention decoder可用于视图转BEV
  • nestJs中跨库查询
  • Java编程思想
  • 数组(Java)
  • 接口自动化测试框架搭建
  • (四十二)第 6 章 树和二叉树(树的二叉链表(孩子-兄弟)存储)
  • 测试萌新Python学习(五)接口自动化测试requests
  • Python 机器学习 基础 之 监督学习 [朴素贝叶斯分类器] / [决策树] 算法 的简单说明 / [graphviz] 绘制决策树
  • QT日志类SimpleQtLogger的简单记录
  • 设计模式:观察者模式
  • ICode国际青少年编程竞赛- Python-5级训练场-带参数函数
  • 运维别卷系列 - 云原生监控平台 之 02.prometheus exporter 实践
  • OSPF基本配置
  • HIVE大数据平台SQL优化分享
  • JS算法-十大排序算法(上)
  • c++编程(11)——string类的模拟实现
  • Python从0到POC编写--函数
  • 【教程】Linux/Jetson 安装X11VNC同步屏幕内容
  • 【LLM第五篇】名词解释:prompt
  • k8s v1.20二进制部署 部署 CNI 网络组件 部署 Calico
  • 在React中利用Postman测试代码获取数据
  • 嵌入式学习-通用定时器
  • 培训行业有哪些ai工具?
  • 7.STL中string的一些超常用函数 (附习题)