读书笔记
小六神通
I'm a newbine
展开
-
Unix环境高级编程读书笔记(1)
1、查看当前session中fd数量限制ulimit -n修改当前session中fd数量的限制ulimit -n 数量2、off_t lseek(int fd,off_t offset,int whence);返回值:当前文件偏移量whence:SEEK_SET//相对于文件起始处 SEEK_CUR//相对于文件当前位置SEEK_END//相对于文件末原创 2017-04-14 18:26:58 · 488 阅读 · 0 评论 -
Unix环境高级编程读书笔记(7)
1、int execl(const char*pathname,const char*arg,...);int execv(const char*pathname,char*constarg[]);int execlp(const char*filename,const char*arg,...);int execvp(const char*filename,char*const ar原创 2017-04-17 15:07:56 · 326 阅读 · 0 评论 -
Unix环境高级编程读书笔记(5)
1、struct timespec{time_t tv_sec;//secondslong tv_nsec;//nanoseconds};2、exit,_exit,_Exit,atexit;前三个函数用于正常终止一个程序:_exit和_Exit立即进入内核;exit则先执行一些清理处理,然后返回内核exit函数总是执行一个标准I/O库的清理关闭操作:对于所有打开原创 2017-04-17 15:06:54 · 473 阅读 · 0 评论 -
Unix环境高级编程读书笔记(6)
1、每一个进程都有一个唯一的非负整型作为标识符pid_t getpid();//获取进程idpid_t getppid();//获取父进程idpid_t getuid();//获取实际用户idpid_t geteuid();//获取有效用户idpid_t getgid();//获取实际组idpid_t getegid();//获取有效组id2、forkpid原创 2017-04-17 15:05:50 · 375 阅读 · 0 评论 -
Unix环境高级编程读书笔记(4)
1、读取/etc/passwd的函数/etc/passwd 每一行 用户登录名:加密口令:用户ID:用户组ID:注释字段:起始目录:shellvoid setpwent(void);//将获取口令重置到第一个struct passwd* getpwent(void);//获取passwd文件中的一个口令,严格的说,是获取下一个口令void endpwent(void);//关闭由s原创 2017-04-15 18:22:57 · 335 阅读 · 0 评论 -
Unix环境高级编程读书笔记(3)
*、标准I/O库处理很多细节,如缓冲区分配、以优化的块长度执行I/O等,这些处理使用户不必担心如何选择使用正确的块长度,这使得它便于用户使用*、对于标准I/O库,它们的操作是围绕流进行的*、对于ASCII字符集,一个字符用一个字节表示,对于国际字符集,一个字符可用多个字节表示;标准I/O文件流可用于单字节或多字节字符解,流的定向决定了所读、写的字符是单字节还是多字节,当一个流最初被原创 2017-04-15 18:16:51 · 218 阅读 · 0 评论 -
Unxi环境高级编程读书笔记(2.2)
1、real user ID:进程调用者是谁,在登陆的时候就获得的值effective user ID:用来校验该进程执行时获得的文件访问权限,也就是当进程访问文件的时候,权限检查的时候检查的是这个值save set-user-ID:通常有效用户ID等于实际用户ID,有效组ID等于实际组ID当执行一个程序文件时,进程的有效用户ID通常就是实际用户ID,有效组ID就是实际组ID,但是原创 2017-04-15 17:49:25 · 236 阅读 · 0 评论 -
Unix环境高级编程读书笔记(2.1)
1、Linux中硬链接和软链接在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个唯一的inode号,文件属性保存在具体的数据块里,在访问文件时,索引结点被复制到内存中,从而实现文件的快速访问。硬链接:说白了就是一个指针,指向文件索引结点,系统并不为它重新分配inode,可以用ln 命令来建立硬链接;创建硬链接后,连接数均增加1,硬链原创 2017-04-15 17:48:43 · 314 阅读 · 0 评论 -
Unix环境高级编程读书笔记(线程)
1、线程的分离状态在任何一个时间点上,线程是可结合的(joinable)或者是分离的(detached)。一个可结合的线程能够被其它线程收回其资源和杀死;在被其它线程回收之前,它的存储器资源是不释放的 。相反,一个分离的线程是不能被其它线程回收或杀死的,它的存储器资源在它终止时由系统自动释放。线程的分离状态决定一个线程以什么样的方式来终止自己,在默认情况下线程是非分离状态的,这种情况下,原原创 2017-04-19 16:37:57 · 388 阅读 · 0 评论 -
Unix环境高级编程读书笔记(8)
*、信号提供了一种处理异步事件的方法,例如终端用户键入中断键,会通过信号机制停止一个程序,或及早终止管道中的下一个程序*、每个信号都有一个名字,这些名字都以3个字符SIG开头,例如SIGABRT是夭折信号,当进程调用abort函数时产生这种信号,SIGALRM是闹钟信号,由alarm函数设置的定时器超时后将产生此信号*、信号是异步事件的经典实例,产生信号的事件对进程而言是随机出现的,进程不原创 2017-04-17 15:09:15 · 648 阅读 · 0 评论