根据王道操作系统专业书课后习题整理得到,md文档网址:https://gitee.com/infiniteStars/wang-dao-408-notes
用分层式架构设计的操作系统结构清晰且便于调试
分层式结构具有非常灵活的依赖关系是错误的
微内核OS的主要缺点是性能问题,因为需要频繁地在核心态和用户态之间进行切换,因而切换开销偏大
可以从4个方面来描述微内核OS,①内核足够小 ②基于客户服务器模式 ③应用“机制与策略分离”原理 ④采用面向对象技术
添加系统服务时,不必修改内核是微内核的优点
一般来说内核的服务越少内核越稳定,所以微内核结构比单一内核稳定
Windows是宏内核操作系统
计算机操作系统的引导程序位于硬盘中
引导程序分为两种:一种是位于ROM中的自举程序(BIOS的组成部分),用于启动具体的设备;另一种是位于装有操作系统硬盘的活动分区的引导扇区中的引导程序(称为启动管理器),用于引导操作系统
BIOS将控制权交给排在首位的启动设备后,CPU将该设备主引导扇区的内容(主引导记录MBR)加载到内存中,然后由MBR检查分区表,查找活动分区,并将该分区的引导扇区的内容(分区引导记录PBR)加载到内存加以执行。
线程包含CPU现场,可以独立执行程序
线程没有自己独立的地址空间,它共享其所属的进程的空间
进程获得处理器运行是通过调度得到的
并发进程失去封闭性是指并发进程共享变量,其执行结果与速度有关
不管系统中是否有线程,进程都是拥有资源的独立单位
内核级线程是处理机调度和分派的基本单位
C语言编写的程序在使用内存时一般分为三个段,二进制代码和常量存放在正文段,动态分配的存储区在数据堆栈,临时使用的变量在数据栈段。函数调用实参传递值在栈段
同一进程或不同进程内的线程都可以并发执行
整个系统只有一个键盘,而且键盘输入是人的操作,速度比较慢,完全可以使用一个线程来处理整个系统的键盘输入。
用户登录成功,启动程序执行可以创建新进程,设备分配不能创建新进程
进程对管道进行读操作和写操作都可能被阻塞
一个正在访问临界资源的进程,由于申请等待I/O操作而被中断时,它允许其他进程抢占处理器,但不得进入该进程的临界区
临界区是指进程中用于访问临界资源的那段代码
临界资源是互斥共享资源,非共享数据不属于临界资源
管程定义了共享数据结构和各种进程在该数据结构上的全部操作
用PV操作实现进程同步,信号量的初始值为由用户确定
可以被多个进程在任意时刻共享的代码,必须是不允许任何修改的代码
一个进程映像中的共享程序段必须用可重复编码编写,因为共享程序段可能同时被多个进程使用,所以必须可重入编码,否则无法实现共享的功能。
管程中signal操作的作用和信号量机制中的V操作不同,管程中的signal操作是针对某个条件变量的,若不存在因该条件而阻塞的进程,则signal不会产生任何影响
若系统有N个进程,则就绪队列中进程的个数最多有N-1个;阻塞队列中进程的个数最多有N个
信箱通信是一种间接通信方式
临界区互斥机制必须遵循忙着等待,空闲让进,有限等待准则,让权等待准则不一定非得实现
在利用顺序检索法时,只要路径名的一个分量名未找到就应停止查找。
对文件的访问控制常由用户访问权限和文件属性共同限制
设文件F1的当前引用计数值为1,先建立文件F1的符号连接(软连接)文件F2,再建立文件F1的硬连接文件F3,然后删除文件F1,此时文件F2和文件F3的引用计数值分别为1,1。
解释:==建立符号链接时,引用计数值直接复制;建立硬链接时,引用计数值加1。==删除文件时,删除操作对于符号链接是不可见的,这并不影响文件系统,当以后再通过符号链接访问时,发现文件不存在,直接删除符号链接;但对于硬链接则不可直接删除,引用计数值减1,若值不为0,则不能删除此文件,因为还有其他硬链接指向此文件。
当建立F2时,F1和F2的引用计数值都为1。当再建立F3时,F1和F3的引用计数值就都变成了2。当后来删除F1时,F3的引用计数值为2-1=1,F2的引用计数值不变。
若文件F1的硬连接为F2,两个进程分别打开F1和F2,获得对应的文件描述符为fd1和fd2,则F1和F2共享同一个内存索引节点,fd1和fd2分别指向各自的用户打开文件表中的一项
若多个进程共享同一个文件F,则在系统打开文件表中仅有一个表项包含F的属性。