操作系统 8.8分
读书笔记 第4章 线程、对称多处理和微内核
流氓

4.1表3.5列出了在一个没有线程的操作系统中进程控制块的基本元素。对于多线程系统,这些元素中那些可能属于线程控制块,那些可能属于进程控制块。

标识符、用户可见寄存器属于进程控制块

控制和状态寄存器、栈指针属于线程控制块

4.2请列出线程间的状态切换比进程间的状态切换开销更低的原因?

进程中的所有线程共享该进程的状态和资源,他们驻留在同一块地址空间中,并且可以访问到相同的数据。

4.3在进程概念中提现出的两个独立且无关的特点是什么?

资源所有权和调度/执行。

4.4给出在单用户多处理系统中使用线程的4个例子

1.前台和后台工作

2.异步处理

3.执行速度

4.模块化程序结构

4.5哪些资源通常被一个进程中的所有线程共享?

线程共享进程的状态和资源

4.6列出用户级线程相对于内核级线程的3个优点

1.线程切换不需要进程做内核态和用户态的切换,节省了两次状态转换

2.线程执行的调度可以交给应用程序来控制

3.用户级线程可以在任何操作系统中运行。

4.7列出用户级线程相对于内核级线程的两个缺点

1.当一个用户级线程执行了一个阻塞的系统调用时,进程的所有线程都会被阻塞

2.在纯粹的用户级线程策略中,一个多线程应用程序不能利用多处理器技术。内核一次只把进程分配给一个处理器,因此一个进程只有一个线程可以执行。

4.8定义jacketing

把一个产生阻塞的系统调用转化为一个非阻塞的系统调用。

4.9简单定义图4.8中列出的各种体系结构

在考虑并行处理器、多数据流的情况下,同一个指令是否能被多个处理器同时处理,以此区分单指令多数据流和多指令多数据流。在多指令多数据流中,根据使用的是共享内存,还是分布式内存区分共享内存多处理器系统和集群。在共享内存多处理器系统中分为主/从和对称多处理。

4.10列出SMP操作系统的主要设计问题

高速缓存同步问题

4.11给出典型的单体结构操作系统中可以找到,且可能是微内核操作系统外部子系统的服务和功能。

客户进程,设备驱动程序,文件服务进程,进程服务进程,虚拟内存登

4.12列出并简单解释微内核设计相对于整体式结构设计的7个优点

一致接口,可扩展性,灵活性,可移植性,可靠性,分布式系统支持,对面向对象操作系统的支持

4.13解释微内核操作系统可能存在的性能缺点

由于通过微内核构造和发送信息、接受应答并解码花费的时间比进行一次系统调用的时间要多。解决方式是把一部分操作系统的核心功能放回微内核中,这样减少了用户-内核态切换的次数、及地址空间进程切换的次数。

4.14列出即使在最小的微内核操作系统中也可以找到的3个功能

低级存储管理,进程间通信,I/O和中断管理

4.15在微内核操作系统中,进程或线程间通信的基本形式是什么?

进程与进程通信使用特定的端口,发消息的方式。

线程与线程通信可以使用共享内存。

0
《操作系统》的全部笔记 5篇
豆瓣
免费下载 iOS / Android 版客户端