硬件介绍
现代计算机系统由一个或多个处理器、主存、打印机、键盘、鼠标、显示器、网络接口以及各种输入/输出设备构成。操作系统是架在用户和底层硬件的桥梁。
大部分计算机有两种运行模式:内核态 和 用户态,软件中最基础的部分是操作系统,它运行在 内核态 中,内核态也称为 管态 和 核心态。操作系统具有硬件的访问权,可以执行机器能够运行的任何指令。软件的其余部分运行在 用户态 下。
管态和目态是什么
1 . 管态又叫特权态,系统态或核心态。CPU在管态下可以执行指令系统的全集。通常,操作系统在管态下运行。
2、目态又叫常态或用户态。机器处于目态时,程序只能执行非特权指令。
特点
用户态 不能直接使用系统资源,也不能改变CPU的工作状态,并且只能访问这个用户程序自己的存储空间
管态 则该程序就可以访问计算机的任何资源,即它的资源访问权限不受限制。
目的
区分内核态和用户态两种操作方式的目的是为了保护操作系统程序。
通常CPU执行两种不同性质的程序:一种是操作系统内核程序;另一种是用户自编程序或系统外层的应用程序。对操作系统而言,这两种程序的作用不同,前者是后者的管理者,因此“管理程序”要执行一些特权指令,而“被管理程序”出于安全考虑不能执行这些指令。所谓特权指令,是指计算机中不允许用户直接使用的指令,如I/O指令、 置中断指令,存取用于内存保护的寄存器、送程序状态字到程序状态字寄存器等指令。
用户态切换到内核态
系统调用。这是用户态进程主动要求切换到内核态的一种方式,用户态进程通 过系统调用申请使用操作系统提供的的服务程序完成工作。系统调用机制的核心还是使用了操作系统为用户特别开放的一个中断来实现。申请使用操作系统提供的的服务程序完成工作。系统调用机制的核心还是使用了操作系统为用户特别开放的一个中断来实现。
异常。当CPU在执行用户态程序时,发生了某些事先不可知的异常,这时会触发由当前运行进程切换到处理此异常的内核相关程序中,也就转到了内核态,例如缺页异常。进程切换到处理此异常的内核相关程序中,也就转到了内核态,例如缺页异常。
I/O设备的中断。当I/O设备完成用户请求操作后,会向CPU发出相应的中断信号,这时CPU会暂停执行下一条即将要执行的指令,转而去执行与中断信号对应的的处理程序,如果先前执行的指令是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到内核态的切换。例如硬盘读写操作完成,系统会切换到硬盘读写的中断处理程序中执行后续的操作。会暂停执行下 一条即将要执行的指令,转而去执行与中断信号对应的的处理程序,如果先前执行的指令是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到内核态的切换。例如硬盘读写操作完成,系统会切换到硬盘读写的中断处理程序中执行后续的操作。
其中系统调用可以认为是用户进程主动发起的,异常和外部设备中断则是被动的
硬件介绍
从概念上来看,一台简单的个人电脑可以被抽象为一种相似的模型,CPU、内存、I/O 设备都和总线串联起来并通过总线与其他设备进行通信。
计算机启动过程
1、BIOS
BIOS程序首先检查,计算机硬件能否满足运行的基本条件,这叫做"硬件自检"(Power-On Self-Test),缩写为POST。
硬件自检完成后,BIOS需要有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。这种排序叫做"启动顺序”(Boot Sequence)。然后按照启动顺序,BIOS把控制权转交给下一阶段的启动程序。
2、主引导记录
计算机读取该设备的第一个扇区,也就是读取最前面的512个字节,即"主引导记录"(Master boot record,缩写为MBR),"主引导记录"的主要作用是,告诉计算机到硬盘的哪一个位置去找操作系统。
3、硬盘启动
然后计算机的控制权就要转交给硬盘的某个分区,加载分区中的操作系统。
4、操作系统
控制权转交给操作系统后,操作系统的内核首先被载入内存。然后进行初始化,完成启动。