摘要: vimdiff 先备份文件,在改动文件。利用 可以明显对比改动。 ctags ctags 能够跳转到函数,宏或变量间的定义或声明。 安装: sudo apt get install ctags 使用: 1.生成tags文件 ctags R /usr/include 把当前目录下的一切和/usr/in 阅读全文
posted @ 2017-04-30 22:29 fuluwwa 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 非阻塞之多路复用 fcntl() NAME fcntl manipulate file descriptor SYNOPSIS include include int fcntl(int fd, int cmd, ... / arg / ); fcntl可以修改文件状态标志: File status 阅读全文
posted @ 2017-04-30 18:09 fuluwwa 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 网络编程 在 Linux 中的网络编程是通过 socket 接口来进行的。 socket概述 socket 接口是一种特殊的 I/O,它也是一种文件描述符。 每一个 socket 都用一个半相关描述{协议,本地地址、本地端口}来表示。 一个完整的套接字则用一个相关描述{协议,本地地址、本地端口、远程 阅读全文
posted @ 2017-04-30 00:05 fuluwwa 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 多线程编程 线程是一个进程内的基本调度单位,也可以称为轻量级进程。 线程是在共享内存空间中并发的多道执行路径,它们共享一个进程的资源,如文件描述和信号处理。因此,大大减少了上下文切换的开销。 Linux线程实现 线程创建和退出 创建线程实际上就是确定调用该线程函数的入口点,这里通常使用的函数是 。 阅读全文
posted @ 2017-04-29 15:56 fuluwwa 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 消息队列 顾名思义,消息队列就是一个消息的列表。用户可以从消息队列种添加消息、读取消息等。 这些消息又是存在于内核中的,由“队列 ID”来标识。 消息队列实现 创建或打开消息队列 msgget函数创建的消息队列的数量会受到系统消息队列数量的限制。 SYNOPSIS include include i 阅读全文
posted @ 2017-04-29 14:33 fuluwwa 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 信号 信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式。 它可以在任何时候发给某一进程,而无需知道该进程的状态。 用户进程对信号的响应可以有 3 种方式: 忽略信号,即对信号不做任何处理,SIGKILL 及 SIGSTOP信号不能忽略。 捕捉信号,定义信号处理函数,当信号发生时,执行相应的 阅读全文
posted @ 2017-04-29 10:22 fuluwwa 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 共享内存 共享内存是一种最为高效的进程间通信方式,进程可以直接读写共享内存而不需要数据的拷贝。 内核专门留出了一块内存区,这段内存区可以由需要访问的进程将其映射到自己的私有地址空间。 由于多个进程共享一段内存,因此也需要依靠某种 同步机制 ,如互斥锁和信号量等。 创建共享内存 SYNOPSIS in 阅读全文
posted @ 2017-04-28 14:53 fuluwwa 阅读(832) 评论(0) 推荐(0) 编辑
摘要: Linux 下进程间通信 处于用户态的不同进程之间是彼此隔离。 Linux下的进程通信方式: 管道及有名管道 管道可用于具有亲缘关系进程间的通信, 有名管道,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。 信号 信号是在软件层次上对中断机制的一种模拟。 消息队列 消息队列是消息的链接表。 阅读全文
posted @ 2017-04-27 11:26 fuluwwa 阅读(169) 评论(0) 推荐(0) 编辑
摘要: Linux 守护进程 守护进程,也就是通常所说的Daemon进程,是Linux中的后台服务进程。 守护进程常常在系统引导装入时启动,在系统关闭时终止。 编写守护进程 1. 创建子进程,父进程退出 由于守护进程是脱离控制终端的,子进程退出,会造成子进程没有父进程,从而变成一个孤儿进程。就会自动由1 号 阅读全文
posted @ 2017-04-26 15:07 fuluwwa 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 进程控制开发 阅读全文
posted @ 2017-04-23 17:42 fuluwwa 阅读(180) 评论(0) 推荐(0) 编辑