摘要: execl : 执行文件函数 #include <unistd.h> int execl(const char *pathname, const char *arg, ... ); 执行参数path字符串所代表的文件路径 参数: - path: 需要指定的执行的文件的路径或者名称(推荐使用绝对路径) 阅读全文
posted @ 2023-05-17 18:35 言叶以上 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 调用fork函数后, 相当于复制一份地址空间出来, 父子进程代码段(.text)是相同的, 但栈空间是没有关系的, 它们依据各自栈空间的值执行各自的判断逻辑 在内核区中, 父进程和子进程的pid是不一样的 父子进程的关系: fork()函数的返回值不同 pcb(progress control bl 阅读全文
posted @ 2023-05-17 18:35 言叶以上 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 一个进程创建了新的进程, 这个新进程即为子进程,子进程还可以再创建子进程,形成进程数结构 fork函数 #include <sys/types.h> #include <unistd.h> pid_t fork(void); 作用: 用于创建子进程 返回: 返回两次,一次在父进程中,一次在子进程中 阅读全文
posted @ 2023-05-17 18:34 言叶以上 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 进程状态 三态模型:就绪态、运行态、阻塞态 五态模型:新建态、就绪态、运行态、阻塞态、终止态 新建态: 进程刚被创建,未进入就绪队列 就绪态:进程具备运行条件,等待系统分配处理器以便运行。可能会有多个,排成一个队列。 运行态:进程占有处理器正在运行 阻塞态:进程不具备运行条件,等待某个事件完成 终止 阅读全文
posted @ 2023-05-17 18:33 言叶以上 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 程序与进程 程序是包含一系列信息的文件,这些信息描述了如何在运行时创建一个进程 进程是正在运行的程序的实例。是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。 可以用一个程序来创建多个进程,进程 阅读全文
posted @ 2023-05-17 18:29 言叶以上 阅读(11) 评论(0) 推荐(0) 编辑
摘要: ### dup 在Linux中,dup函数用于复制一个文件描述符。具体而言,dup函数会复制参数fd所指向的文件描述符,并返回一个新的文件描述符,新的文件描述符和原文件描述符指向同一个文件表项,也就是说,它们共享同一文件偏移量和文件状态标志等信息。新的文件描述符和原文件描述符的值可能不同。 ```c 阅读全文
posted @ 2022-10-14 22:15 言叶以上 阅读(119) 评论(0) 推荐(0) 编辑
摘要: `fcntl`是Linux中的一个系统调用,用于对文件描述符进行控制操作。其主要功能包括文件复制、文件描述符的获取和设置、非阻塞I/O等操作。 ```c #include #include int fcntl(int fd, int cmd, .../* arg */); // arg 参数: fd 阅读全文
posted @ 2022-10-14 22:15 言叶以上 阅读(51) 评论(0) 推荐(0) 编辑
摘要: #include <sys/types.h> #include <dirent.h> DIR *opendir(const char *name); 作用: 打开一个目录 参数: - name: 需要打开的目录流 返回值: DIR* 类型, 目录流 NULL 错误 #include <dirent. 阅读全文
posted @ 2022-10-14 22:14 言叶以上 阅读(46) 评论(0) 推荐(0) 编辑
摘要: #include <sys/stat.h> #include <sys/types.h> int mkdir(const char *pathname, mode_t mode); 作用: 创建一个目录 参数: pathname: 创建的目录的路径 mode: 权限,八进制的数 返回值: 成功返回0 阅读全文
posted @ 2022-10-14 22:13 言叶以上 阅读(46) 评论(0) 推荐(0) 编辑
摘要: #include <unistd.h> int chdir(const char *path); 作用:修改进程的工作目录 比如在/home/nowcoder 启动了一个可执行程序a.out, 进程的工作目录就是 /home/nowcoder 参数: path: 需要修改的工作目录 返回值: 0 s 阅读全文
posted @ 2022-10-14 22:12 言叶以上 阅读(64) 评论(0) 推荐(0) 编辑