操作系统面试常常问到的问题
什么是操作系统?它的功能和特征? 操作系统就是管理和控制计算机硬件和软件资源的程序,它的管理功能有: 进程管理 内存管理 文件管理 I/O管理 操作系统是用户与硬件之间的接口,也是硬件和软件之间的接口。 操作系统的四大特征: 并发:两个或多个进程在同一时间间隔内发生,注意和并行的区别。 共享:系统中的资源可供多个并发执行的进程使用。 虚拟:把一个物理实体,变为若干个逻辑上的对应物,如虚拟处理器、虚拟内存、虚拟外部设备。 异步:由于多个程序并发执行和资源有限,进程执行是走走停停的。 什么是管态和目态?为什么要区分管态和目态? 管态:特权态/系统态/核心态,处于管态的程序可以访问计算机任何资源,访问权限不受限制。通常操作系统在管态运行。 目态:常态/用户态,处于目态的程序只能执行非特权指令,不能直接使用系统资源,不能改变CPU工作状态,且只能访问本程序的存储空间。 区分管态和目态的目的:出于安全考虑,保护操作系统程序。内核程序是用户程序的管理者,需要执行一些特权指令,如I/O指令,中断指令等,特权指令不允许用户直接使用。 如何从目态切换到管态 系统调用:使用中断机制,用户态的进程通过系统调用申请使用操作系统提供的服务程序,主动要求切换到内核态。 异常:CPU运行用户态进程时,发生异常,例如缺页,则会切换到处理当前异常的内核程序中。 I/O中断:I/O设备完成用户请求的操作后