linux
文章平均质量分 69
心_kokoro
暂停更新
展开
-
linux:文件描述符(二)
文件描述符文件描述符继承验证dup原型功能参数返回值dup2原型功能参数返回值重定向至logpipe原型功能参数返回值例子:管道连接父子进程 文件描述符继承 子进程会继承父进程的文件描述符 验证 #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <stdio.h> void dump(int fd) {原创 2021-05-22 17:01:43 · 521 阅读 · 3 评论 -
linux:文件描述符(一)
文件描述符文件描述符定义系统调用打开文件读写文件例子:访问文件 文件描述符 定义 一个非负整数 应用程序利用文件描述符来访问文件 file descriptor,简写为fd 系统调用 打开现存文件或新建文件时,内核会返回一个文件描述符 读写文件也需要使用文件描述符来指定待读写的文件 打开文件 int open(char *path, int flags, mode_t mode); 内核会返回一个文件描述符fd用来表示该文件 读写时需要使用fd指定待读写的文件 读写文件 int read(int原创 2021-05-22 15:59:47 · 462 阅读 · 0 评论 -
linux:进程相关知识(三)
linux进程命令行参数C程序的main函数原型参数例子execl原型功能返回值execlp原型功能execl和execlp的区别例子execv原型功能参数execl和execv的区别execvp例子exit原型功能atexit原型功能例子wait原型功能参数退出码例子 命令行参数 C程序的main函数原型 int main(int argc, char *argv[]); 参数 操作系统将命令行参数传递给main函数 argc,命令行参数的个数 argv,命令行参数数组 例子 cp /etc/pas原创 2021-05-22 15:51:22 · 170 阅读 · 0 评论 -
linux:进程相关知识(二)
linux进程进程特性fork的实现细节隔离特性并发例子隔离例子 进程特性 父进程和子进程并发运行 父进程创建子进程后,父子进程都处于运行状态中 两个进程的输出结果是交织在一起的 两者的代码段内容相同 父进程从fork()返回处执行,fork()返回为子进程的PID 子进程从fork()返回处执行,fork()返回0 fork的实现细节 操作系统为子进程创建PCB(进程控制块),把父进程的大部分属性复制到子进程的PCB中 不复制PID属性,父子进程拥有不同的PID 操作系统为子进程创建地址空间,把原创 2021-05-22 11:34:56 · 198 阅读 · 0 评论 -
linux:c的文件读写
C的文件读写打开文件原型功能参数创建文件原型功能返回值参数关闭文件原型功能参数读取文件原型功能参数写入文件原型功能定位文件原型功能应用 打开文件 原型 #include <sys/stat.h> #include <fcntl.h> int open(const char *pathname, int flags); 功能 打开已有的文件 如果打开失败,返回-1 如果打开成功,返回值>=0,作为被打开文件的标识符,该整数被称为文件描述符 参数 pathname,指定文原创 2021-05-22 11:02:21 · 771 阅读 · 0 评论 -
linux下c语言实现sh.c
#include<unistd.h> #include<stdio.h> #include<sys/wait.h> #include<sys/types.h> #include<stdlib.h> #include<string.h> #define MAX_CMD 1024 #define MAX_DIR_NAME 1024 int buildin_command(char **argv){ if(strcmp(argv[0]原创 2021-05-05 02:03:34 · 558 阅读 · 0 评论