摘要: 对比 设置进程/线程屏蔽信号:sigprocmask/pthread_sigmask 等待指定进程/线程结束:waitpid/pthread_join 向指定进程/线程发送信号:kill/pthread_kill 线程特有的等待指定的信号发生:sigwait gcc编译时需加参数:gcc test. 阅读全文
posted @ 2016-07-23 18:21 cfans1993 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 非阻塞io 1.对比 阻塞io的例子:scanf从终端获取输入时,如果不输入程序就会一直停在那; 对一个已经有写锁的文件请求读时, 会一直空等直到前面的进程释放锁... 非阻塞的例子:读取文件内容, 如果文件当前因加锁无法访问则立即出错返回 2.非阻塞io设置方法 a.调用open函数时, 指定O_ 阅读全文
posted @ 2016-07-10 12:41 cfans1993 阅读(844) 评论(0) 推荐(0) 编辑
摘要: pipe(管道) 专用于父子进程通信, 函数原型 int pipe(int fd[2]) fd[0]表示输入, fd[1]表示输出 如果父子进程要双向通信, 可以通过类似信号的功能进行控制, 也可以简单地打开两个pipe 以下例子, 打开两个pipe, 第一个pipe用于父进程向子进程发送信息, 第 阅读全文
posted @ 2016-07-10 12:41 cfans1993 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 非阻塞io 1.对比 阻塞io的例子:scanf从终端获取输入时,如果不输入程序就会一直停在那; 对一个已经有写锁的文件请求读时, 会一直空等直到前面的进程释放锁... 非阻塞的例子:读取文件内容, 如果文件当前因加锁无法访问则立即出错返回 2.非阻塞io设置方法 a.调用open函数时, 指定O_ 阅读全文
posted @ 2016-07-07 14:55 cfans1993 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 简介 守护线程在系统启动时运行,在系统终止时退出,没有控制终端,只在后台作为一个服务默默运行 编写规则 1.调用umask()设置文件创建时的权限规则 2.调用fork, 然后使父进程exit 3.调用setsid创建一个新会话 4.将系统根目录设置为当前工作目录 5.关闭不再需要的文件描述符 6. 阅读全文
posted @ 2016-07-05 13:48 cfans1993 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 信号的分类 1.可靠信号: 此类信号支持排队, 不会丢失, 发送多少次就接收多少次. 此类信号的用途可由用户自定义 2.不可靠信号: 此类信号不支持排队, 可能会丢失, 连续多次发送同一信号只接收一次. 此类信号一般都有明确定义和用途 信号的发送 int kill(pid_t pid, int si 阅读全文
posted @ 2016-07-05 13:41 cfans1993 阅读(144) 评论(0) 推荐(0) 编辑
摘要: /etc/passwd passwd文件保存着用户的初始工作信息, 每一行保存一位用户的信息 可以通过getpwuid或getpwnam来获取指定用户的信息 struct passwd \ getpwuid(uid_t uid); 通过指定uid来获取 struct passwd \ getpwna 阅读全文
posted @ 2016-07-01 09:08 cfans1993 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 基本构成 分区就是把磁盘像比萨饼一样切成大小一样的扇形, 当然分区大小不一样扇形的大小也就不一样 上下一串盘片中,相同半径的磁道所组成的一个圆柱型的环壁,就称为柱面 在柱面组中, 比较重要的两个结构是:i节点集合和数据块集合 i节点和数据块 数据块集合是由大小固定的数据块组成, 在很多系统中数据块的 阅读全文
posted @ 2016-06-29 15:47 cfans1993 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 创建和删除 int mkdir(const char \ pathname, mode_t mode); int rmdir(const char \ pathname); 另外remove也可以删除文件夹 mode: S_IRUSR,S_IWUSR,S_IXUSR,S_IRGRP,S_IWGRP, 阅读全文
posted @ 2016-06-29 12:37 cfans1993 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 关于属性的结构 在linux下文件和文件夹都被认为是文件, 所以以下的这个属性对文件和文件夹通用 获取属性的函数有stat/fstat/lstat/fstat c struct stat buf; char pathname="./test.txt"; if(stat(pathname,&buf) 阅读全文
posted @ 2016-06-28 18:19 cfans1993 阅读(588) 评论(0) 推荐(0) 编辑