正在加载图片...
线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源 (2)以进程为单位进行处理机调度和切换时,由于涉及到资源转移以及现场保护等问题,将导 致处理机切换时间变长,资源利用率低。以线程为单位进行处理机调度和切换时,由于不发生 资源变化,特别是地址空间的变化,处理机切换时间较短,处理机效率高。 (3)就用户而言,多线程可以减少用户的等待时间,提高系统的响应速度。例如,当一个进程需 要对两个不同服务器进行远程过程调用时,对于无线程的操作系统,就需要顺序等待两个不 同调用返回结果后才能继续执行,而且等待中可能发生进程调度。对于多线程系统,则可以在 同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间 (4)线程和进程一样,都有自己的状态和相应的同步机制,但是,由于线程没有单独的数据和 程序空间,因此,线程不能像进程的程序和数据一样,交换到外存上,因此线程没有挂起状态 进程的调度、同步控制大多由操作系统内核完成,而线程的控制可以由操作系统内核完 成,也可以由用户控制完成 3.系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一 级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的 工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统 的具体动作而只提供杳关的功能。 它与一般用户程序、库函数和实用程序的区别是:系统功能调用是在程序核心态执行, 调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。 4.设备驱动程序是驱动外部物理设各和相应的DMA控制器或I/0控制器等设备,使 之能直接和内存进行I/0操作的子程序集合。它们负责设置相应设备的有关寄存器,启动I/0 操作,指定操作类型和数据流向等 设备驱动程序屏蔽了直接对硬件操作的细节,为程序员提供了操作设备的良好接口。 用户进程通过调用设备驱动程序提供的接口来使用设各驱动程序。 5.引进缓冲区的目的是为了匹配外设与CPU之间的处理速度,减少中断次数和中断处理 时间,解决DMA和通道方式的数据传输瓶颈。 缓冲区分为自由buf队列、空设备队列、设备缓冲区队列、设备I/0请求队列。 6.内存利用率不高,主要表现为以下四种形式: (1)内存中存在着大量的、分散的、难以利用的碎片 2)暂时或长期不能运行的程序和数据,占据了大量的存储空间。 (3)当作业较大时,内存中只能装入少量作业,当它们被阻塞时,将使CPU空闲,从而也就 降低了内存的利用率 (4)内存中存在着重复的拷贝。 针对上述问题,可分别采用下述方法提高内存的利用率 (1)改连续分配方式为离散分配方式,以减少内存中的零头 (2)增加对换机制,将那些暂时不能运行的进程或暂时不需要的程序和数据,换出至外存 以腾出内存来装入可运行的进程。 (3)引入动态链接机制,当程序在运行中需要调用某段程序时,才将该段程序由外存装入 内存。这样,可以避免装入一些本次运行中不用的程序。 (4)引入虚拟存储器机制,使更多的作业能装入内存,并使CPU更加忙碌。引入虚拟存储器 机制,还可以避免装入本次运行中不会用到的那部分程序和数据 (5)引入存储器共享机制,允许一个正文段或数据段被若干个进程共享,以削减内存中重 复的拷贝。 五.综合题 1.(1)A.根据程序编译后形成的逻辑地址,取出段号s,w线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源。 (2)以进程为单位进行处理机调度和切换时,由于涉及到资源转移以及现场保护等问题,将导 致处理机切换时间变长,资源利用率低。以线程为单位进行处理机调度和切换时,由于不发生 资源变化,特别是地址空间的变化,处理机切换时间较短,处理机效率高。 (3)就用户而言,多线程可以减少用户的等待时间,提高系统的响应速度。例如,当一个进程需 要对两个不同服务器进行远程过程调用时,对于无线程的操作系统,就需要顺序等待两个不 同调用返回结果后才能继续执行,而且等待中可能发生进程调度。对于多线程系统,则可以在 同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。 (4)线程和进程一样,都有自己的状态和相应的同步机制,但是,由于线程没有单独的数据和 程序空间,因此,线程不能像进程的程序和数据一样,交换到外存上,因此线程没有挂起状态。 进程的调度、同步控制大多由操作系统内核完成,而线程的控制可以由操作系统内核完 成,也可以由用户控制完成。 3.系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一 级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的 工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统 的具体动作而只提供杳关的功能。 它与一般用户程序、库函数和实用程序的区别是:系统功能调用是在程序核心态执行, 调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。 4.设备驱动程序是驱动外部物理设各和相应的 DMA 控制器或 I/O 控制器等设备,使 之能直接和内存进行 I/O 操作的子程序集合。它们负责设置相应设备的有关寄存器,启动 I/O 操作,指定操作类型和数据流向等。 设备驱动程序屏蔽了直接对硬件操作的细节,为程序员提供了操作设备的良好接口。 用户进程通过调用设备驱动程序提供的接口来使用设各驱动程序。 5.引进缓冲区的目的是为了匹配外设与 CPU 之间的处理速度,减少中断次数和中断处理 时间,解决 DMA 和通道方式的数据传输瓶颈。 缓冲区分为自由 buf 队列、空设备队列、设备缓冲区队列、设备 I/0 请求队列。 6. 内存利用率不高,主要表现为以下四种形式: (1)内存中存在着大量的、分散的、难以利用的碎片。 (2)暂时或长期不能运行的程序和数据,占据了大量的存储空间。 (3)当作业较大时,内存中只能装入少量作业,当它们被阻塞时,将使 CPU 空闲,从而也就 降低了内存的利用率。 (4)内存中存在着重复的拷贝。 针对上述问题,可分别采用下述方法提高内存的利用率: (1)改连续分配方式为离散分配方式,以减少内存中的零头。 (2)增加对换机制,将那些暂时不能运行的进程或暂时不需要的程序和数据,换出至外存, 以腾出内存来装入可运行的进程。 (3)引入动态链接机制,当程序在运行中需要调用某段程序时,才将该段程序由外存装入 内存。这样,可以避免装入一些本次运行中不用的程序。 (4)引入虚拟存储器机制,使更多的作业能装入内存,并使 CPU 更加忙碌。引入虚拟存储器 机制,还可以避免装入本次运行中不会用到的那部分程序和数据。 (5)引入存储器共享机制,允许一个正文段或数据段被若干个进程共享,以削减内存中重 复的拷贝。 五. 综合题 1.(1)A.根据程序编译后形成的逻辑地址,取出段号 s,w
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有