”APUE学习笔记“ 的搜索结果

APUE学习笔记

标签:   unix  descriptor  file

      <br /> <br />[在此处输入文章标题]         Chapter 1 UNIX System Overview <br />Unix 架构(程序员角度) 以上图形是重程序员的角度描述Unix的整体架构。...

     1.1 Unix体系 内核的接口被称为系统调用。公用函数库构建在系统调用接口之上。shell和公共函数都能直接进行系统调用, 应用程序可以直接进行系统调用,也可以使用shell和公共函数库里的函数,从而间接进行系统调用。...

     基本概念 内核使用3个数据结构描述一个打开的文件:进程表、文件表、V节点表 首先了解3种数据结构的概念 1 进程表 ...进程表里是一组打开的文件描述符,如标准输入0,标准输出1,标准错误2... ......

     一、文件描述符 按照惯例,UNIX shell使用文件描述符0与进程的标准输入相结合,文件描述符1与标准的输出相结合,文件描述符2与标准出错输出相结合。 二、相关函数 open函数如下,返回文件描述符 ...

     第十六章 网络IPC:套接字 本章将考察不同计算机上的进程相互通信的机制:网络进程间通信。在本章中将描述套接字网络进程间通信接口,进程用该接口能够和其他进程通信。参考:...

     最后花了一些时间学习了下《unix环境高级编程》。这本书其实买了半年了一直都没有时间打开。平时上班的时候都纠结于一些边角料的工作和细枝末节的技术问题,感觉自己的提升太少了,所以觉得还是要找时间好好补一补...

     本章将说明进程之间相互通信的其它技术----进程间通信(IPC)     管道 管道只能在具有公共祖先的两个进程之间只用。通常,一个管道由一个进程创建,在进程调用fork后,这个管道就能在父进程和子进程之间使用...

     APUE学习笔记(部分) 第一章 Unix基础知识 操作系统的体系结构 输入输出 头文件<unistd.h> 每当运行一个新程序时,所有的shell 都为其打开3 个文件描述符,即标准输入(standard input )、标准输出( standard ...

     3.2 文件描述符 对于内核,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数。当打开一个现有或者创建一个新文件时,内核向进程返回一个文件描述符。当读写一个文件时,使用open或creat返回的文件描述...

     扩展一下,如果本来不止AB两个线程在阻塞,而是多个线程在阻塞,那么因为使用if,所有的线程可能都被唤醒,接着不管条件x是否满足,全都往下执行,则发生了“惊群效应”。首次判断时x==1,此时进入if块内,执行wait...

     听说写博客可以提高自己的水平,因此趁着这个机会我想把它重新看一遍,并把每一章的笔记写在博客里面。 我学习的时候使用的平台是Windows+VMware+debian,使用secureCRT来连接(可以实现多个终端连接)。 因为...

     本章将考察不同计算机(通过网络连接)上的进程相互通信的机制:网络进程间通信。     套接字描述符 正如使用文件描述符访问文件,应用程序用套接字描述符访问套接字。...许多处理文件描述符函数(如read和write...

     11. 1 线程概念 进程可以有多个控制线程,每个线程处理各自独立的任务。一个进程的所有信息对该进程的所有线程都是共享的,包括可执行程序的代码、程序的全局内存和堆内存、栈以及文件描述符。 ...

     登录名:一般在/etc/passwd里面 关于dirent,文件夹包括/usr/include/dirent.h和/usr/include/x86_64-linux-gnu/bits/dirent.h 可以通过 getpid来获得进程的id 进程控制有三种主要的函数: fork exec(有7种...

     10.1 信号概念 mac和linux都支持31种信号。不存在编号为0的信号。 产生信号的方式: 当用户按某些终端键时引发终端产生的信号 硬件异常产生信号:除数为0、无效的内存引用等 用户可用kill命令将信号发送给其他进程 ...

     16.1 套接字描述符 套接字是通信端点的抽象,用套接字描述符访问套接字。套接字描述符本质上是一个文件描述符,但是不是所有接受文件描述符的函数都接受套接字描述符。 为创建一个套接字,调用socket函数。...

     文件共享 Unix系统支持在不同的进程间共享打开文件。其结构如下所示: 内核使用了三种数据结构,它们之间的关系决定了在文件共享方面一个进程对另一个进程的影响。 每个进程在进程表中都有一个记录项,在每个记录...

     5.1 流和FILE 所有I/O函数都是围绕文件描述符的。 当打开一个文件时返回一个文件描述符,该文件描述符就用于后续的I/O操作。 标准I/O库的操作是围绕流(stream) 进行的。 标准I/O文件流可用于单字节或多字节(“宽...

     管道和FIFO仍能有效引用于大量应用程序,但是在新程序中要避免使用消息队列和信号量,而应当考虑使用全双工管道和记录锁。 15.1 管道 管道的局限性: ...#include "apue.h" int main(void) { int n; int

     本章介绍一种高级IPC---UNIX域套接字机制,并说明它的应用方法     UNIX域套接字 UNIX域套接字用于在同一台计算机上运行的进程(无关进程)之间的(全双工)通信。相比于因特网套接字,UNIX域套接字效率更高。...

     标准IO库函数 fopen() 函数原型:FILE* fopen(const char* path,const char* mode) **功能描述:**函数 fopen 打开 一个 文件, 并且 分配 一个流。 文件名 由 字符串 path 指定. 参数 mode 指向 一个 字符串, 该 ...

     8.1 进程标识 每个进程都有一个非负整型表示的唯一进程ID。进程ID是可重用的。 ID为0的进程通常是调度进程,常常被称为交换进程(swapper)。 该进程是内核的一部分,它并不执行任何磁盘上的程序。...

     12. 1 线程属性 如果在创建线程时就知道不需要了解线程的终止状态,就可以使用pthread_attr_setdetachstate pthread_attr_init对线程属性进行初始化,pthread_attr_destroy执行清理工作。 对于进程来说虚地址空间的...

     3.1 文件描述符 对于内核而言,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数。 例子: 0表示stdin, 1表示stdout, 2表示stderr. 文件描述符的变化范围是0~OPEN_MAX-1,早期允许每个进程打开19个...

10  
9  
8  
7  
6  
5  
4  
3  
2  
1