Linux -- 系统调用

系统调用基础

用户态函数 → 触发内核态系统调用

  • printf → 内核 write

  • fopen/fclose → 内核 open/close

文件操作核心系统调用:

open → read → write → close

文件操作系统调用详解

1. 标准文件描述符

  • 0:标准输入 stdin

  • 1:标准输出 stdout

  • 2:标准错误 stderr

自定义打开的文件描述符从 3 开始。

2. 常用头文件

复制代码
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <stdlib.h>

3. 打开文件:open

复制代码
int open(const char *pathname, int flags, mode_t mode);
  • 常用 flags:

    • O_RDONLY:只读

    • O_WRONLY:只写

    • O_CREAT:不存在则创建

    • O_TRUNC:清空文件

  • 返回值:成功返回文件描述符 fd,失败返回 -1。

4. 读写关闭

  • read(fd, buf, count):读数据到缓冲区。

  • write(fd, buf, count):写数据到文件。

  • close(fd):关闭文件,释放描述符。

相关推荐
Shingmc319 小时前
【Linux】数据链路层
linux·服务器·网络
池塘的蜗牛19 小时前
A Low-Complexity Method for FFT-based OFDM Sensing
算法
a7520662819 小时前
零基础实操:小龙虾 AI OpenClaw 接入 Kimi 详细步骤
运维·服务器
bksczm19 小时前
文件描述符
linux
Goldbioinformatics19 小时前
Windows版Claude Cowork启动Linux问题
linux·运维·windows
故事和你9120 小时前
洛谷-【图论2-1】树5
开发语言·数据结构·c++·算法·动态规划·图论
念恒1230620 小时前
Ext系列文件系统(下)
linux·运维·服务器
小贾要学习20 小时前
【Linux】Linux高性能IO多路复用:epoll全方位详解(从原理到实战)
linux·服务器·网络
llhm20 小时前
tsp学习笔记——LINUX SDK编译2(2)Kernel6.1 Linux
linux·笔记·学习