UNIX环境高级编程读书笔记

主要记录关键知识点,方便日后查阅

  1. 第一章 UNIX基础知识
    UNIX体系结构,书中是这样画的:
    在这里插入图片描述
    这篇文章认为这样画不合理https://blog.csdn.net/lyndon_li/article/details/116956043
    应该这样,我也赞同
    在这里插入图片描述
    shell是特殊的一种应用程序
    errno:在支持多线程的环境中,多个线程共享进程地址空间,每个线程都有属于它自己的局部errno以避免一个线程干扰另一个线程,定义为
    extern int __errno_location(void)
    #define errno (
    __errno_location)

时间:
https://blog.csdn.net/aganlengzi/article/details/21888351
进程的三种状态为阻塞、就绪、运行。和上述时间的关系是:

时钟时间 = 处于阻塞状态时间 + 处于就绪状态时间 +处于运行状态时间
用户CPU时间 = 运行状态下用户空间的时间
系统CPU时间 = 运行状态下系统空间的时间。
用户CPU时间+系统CPU时间=运行时间,也就是进程时间(CPU时间)

系统调用和库函数:
https://blog.csdn.net/lht1314tttt/article/details/79150776
2. 第三章 文件I/O
open 返回的文件描述符一定是最小的未用描述符数值
术语不带缓冲指的是每个read和write都调用内核中的一个系统调用
可以参考:https://www.cnblogs.com/bakari/p/5532810.html
举个例子:将键盘输入写入文件,一种不带缓冲的可能需要写一个字就要调用内核,然后通过内核写进磁盘空间;如果带缓冲,则是缓冲区满了之后才会去系统调用

多进程读写同一个文件
在这里插入图片描述

可以使用APPEND标志
https://blog.csdn.net/lht1314tttt/article/details/79150776

那多线程同时读写一个文件,是会怎样的,是同一个描述符吗?

第八章 进程控制
解释器文件:https://www.cnblogs.com/beacer/archive/2012/09/16/2687659.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值