知识体系
计算机系统自下而上可大致分为4部分:硬件、操作系统、应用程序和用户。操作系统管理各种计算机硬件,为应用程序提供基础,并充当计算机硬件与用户之间的中介。os中的四大知识板块分别对应了它的功能:进程、虚拟存储器、文件、I/O设备。
操作系统最重要的功能是并发和共享。
操作系统提供了用户接口,分为命令接口(联机命令接口、脱机命令接口)和程序接口(图形用户界面)。
发展过程
个人计算机
↓ 脱机技术
批处理阶段
单道批处理
多道批处理
↓
分时操作系统
↓
实时操作系统
↓
网络、分布式
这一发展过程主要都是在解决人际矛盾和CPU与I/O设备速度不匹配问题。
运行机制
计算机系统中,通常CPU执行两种不同性质的程序:一种是操作系统内核程序;另一种是户自编程序。前者是后者的管理者,因此内核程序要执行一些特权指令。在具体实现上,将CPU的状态划分为用户态(目态)和核心态(又称管态、内核态)。用户自编程序运行在用户态,操作系统内核程序运行在核心态。
内核涉及时钟管理、中断机制、原语、基本的系统管理。
中断处理
中断也称外中断,指来自CPU执行指令以外的事件的发生,如设备发出的I/O结束中断,表示设备输入/输出处理已经完成,希望处理机能够向设备发下一个输入/输出请求,同时让完成输入/输出后的程序继续运行。时钟中断,表示一个固定的时间片已到,让处理机处理计时、启动定时运行的任务等。这一类中断通常是与当前指令执行无关的事件,即它们与当前处理机运行的程序无关。
异常也称内中断、例外或陷入(trap),指源自CPU执行指令内部的事件,如程序的非法操作码、地址越界、算术溢出、虚存系统的缺页及专门的陷入指令等引起的事件。对异常的处理一般要依赖于当前程序的运行现场,而且异常不能被屏蔽,一旦出现应立即处理。
在中断处理中,最重要的两个寄存器是PC和PSWR。它们由中断隐指令自动保存(第一步骤,保存断点),而通用寄存器内容由操作系统保存(第二步骤,保护现场)。.
系统调用
用户在程序中调用操作系统所提供的一些子功能。系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作,都必须通过系统调用方式向操作系统提出服务请求,并由操作系统代为完成。
执行系统调用的过程如下:
1、正在运行的进程先传递系统调用参数;
2、由陷入(trap) 指令负责将用户态转换为内核态,并将返回地址压入堆栈以备后用;
3、CPU执行相应的内核态服务程序;
4、返回用户态。