APUE
Runnyu
这个作者很懒,什么都没留下…
展开
-
apue学习笔记(第十五章 进程间通信)
本章将说明进程之间相互通信的其它技术----进程间通信(IPC) 管道 管道只能在具有公共祖先的两个进程之间只用。通常,一个管道由一个进程创建,在进程调用fork后,这个管道就能在父进程和子进程之间使用了。 管道是通过调用pipe函数创建的: #include int pipe(int fd[2]); 经由参数fd返回两个文件描述符:fd[0]为读而打开,fd[1原创 2015-08-12 20:28:04 · 268 阅读 · 0 评论 -
apue学习笔记(第三章 文件I/O)
Linux 文件I/O原创 2015-08-12 20:27:23 · 243 阅读 · 0 评论 -
apue学习笔记(第五章 标准I/O)
本章讲述标准I/O库 流和FILE对象 对于标准I/O库,它们的操作是围绕流进行的。流的定向决定了所读、写的字符是单字节还是多字节的。 #include #include int fwide(FILE *fp,int mode); fwide函数可用于流的定向。根据mode参数的不同值,fwide函数执行不同的工作 若mode参数值为负,fwide将试图使指定的流是原创 2015-08-12 20:27:30 · 255 阅读 · 0 评论 -
apue学习笔记(第十六章 网络IPC:套接字)
本章将考察不同计算机(通过网络连接)上的进程相互通信的机制:网络进程间通信。 套接字描述符 正如使用文件描述符访问文件,应用程序用套接字描述符访问套接字。 许多处理文件描述符函数(如read和write)可以用于处理套接字描述符。调用socket函数创建一个套接字 #include int socket(int domain,int type,int protocol)原创 2015-08-12 20:28:07 · 398 阅读 · 0 评论 -
apue学习笔记(第十三章 守护进程)
本章将说明守护进程结构,以及如何编写守护进程程序。 守护进程,也就是通常说的Daemon进程,是Unix中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。 编程规则 在编写守护进程程序时需遵循一些基本规则,以防止产生不必要的交互作用。下面将说明这些规则。 1.调用umask将文件模式创建屏蔽字设置为一个已知值(通常是0)原创 2015-08-12 20:27:57 · 275 阅读 · 0 评论 -
apue学习笔记(第六章 系统数据文件和信息)
UNIX系统的正常运作需要使用大量与系统有关的数据文件,例如,口令文件/etc/passwd和组文件/etc/group就是经常被多个程序频繁使用的两个文件。 口令文件 UNIX系统口令文件包含如下字段,这些字段包含在中定义的passwd结构中 口令文件是/etc/passwd,每一行包含上面各字段,字段之间用冒号分隔。可以使用finger命令打印指定用户的有关信息:finger原创 2015-08-12 20:27:32 · 328 阅读 · 0 评论 -
apue学习笔记(第十七章 高级进程间通信)
本章介绍一种高级IPC---UNIX域套接字机制,并说明它的应用方法 UNIX域套接字 UNIX域套接字用于在同一台计算机上运行的进程(无关进程)之间的(全双工)通信。相比于因特网套接字,UNIX域套接字效率更高。 UNIX域套接字仅仅复制数据,不执行协议处理,不需要添加或删除网络报头,无需计算校验和,不要产生顺序号,无需发送确认报文。 UNIX域套接字提供流和数据报两种接口,原创 2015-08-12 20:28:11 · 327 阅读 · 0 评论 -
apue学习笔记(第八章 进程控制)
本章介绍UNIX系统的进程控制,包括创建新进程、执行程序和进程终止。 进程标识 每一个进程都有一个非负整数表示的唯一进程ID,除了进程ID,每个进程还有一些其他标识符。下列函数返回这些标识符 #include pid_t getpid(void); pid_t getppid(void); uid_t getuid(void); uid_t geteuid(void);原创 2015-08-12 20:27:39 · 331 阅读 · 0 评论 -
apue学习笔记(第九章 进程关系)
本章将详细地说明进程组以及POSIX.1引入的会话的概念。还将介绍登录shell和所有从登录shell启动的进程之间的关系 终端登录 BSD终端登录。系统管理者创建通常名为/etc/ttys的文件,其中每个终端设备都有一行,用来说明设备名和传到getty程序的参数。 当系统自举时,内核创建进程ID为1的进程(init进程)。init进程读取文件/etc/ttys,对每一个允许登录的终端原创 2015-08-12 20:27:44 · 334 阅读 · 0 评论 -
apue学习笔记(第十章 信号)
本章先对信号机制进行综述,并说明每种信号的一般用法。 信号概念 每个信号都有一个名字,这些名字都以3个字符SIG开头。在头文件中,信号名都被定义为正整形常量。 在某个信号出现时,可以按下列3种方式之一进行处理: 1 忽略该信号。大多数信号都可以使用这种方式进行处理,但有两种信号却决不能被忽略:SIGKILL和SIGSTOP(只能执行系统默认动作)。 2 捕获信号。通知内核在某信号发原创 2015-08-12 20:27:46 · 310 阅读 · 0 评论 -
apue学习笔记(第十二章 线程控制)
本章将讲解控制线程行为方面的详细内容,而前面的章节中使用的都是它们的默认行为 线程属性 pthread接口允许我们通过设置每个对象关联的不同属性来细调线程和同步对象的行为。管理这些属性的函数都遵循相同的模式:1.每个对象与自己类型的属性对象进行关联(线程与线程属性关联,互斥量与互斥量属性关联等)2.有一个初始化函数,把属性设置为默认值3.有一个销毁属性对象的函数4.每个属性都有一个从属性原创 2015-08-12 20:27:53 · 254 阅读 · 0 评论 -
apue学习笔记(第十四章 高级I/O)
本章涵盖了从多概念和函数:非阻塞I/O、记录锁、I/O多路转换、异步I/O、readv和writev函数以及存储映射I/O 非阻塞I/O 非阻塞I/O使我们可以发出open、read和write这样的I/O操作,并使这些操作不会永远阻塞。如果这种操作不能完成,则调用立即返回出错。 对于一个给定的文件描述符,有两种为其制定非阻塞I/O的方法: 1.如果调用open获得描述符,则可原创 2015-08-12 20:28:00 · 328 阅读 · 0 评论 -
apue学习笔记(第一章UNIX基础知识)
UNIX基础知识原创 2015-08-12 20:27:18 · 490 阅读 · 0 评论