一、多任务实现途径
1、通过多CPU实现多任务
通过在硬件上增加多个CPU或采用多核的CPU,来实现多任务,比如我国研发的超级计算机(如曙光、天河和银河等系列)。
2、通过中断来实现多任务
在无操作系统的单片机裸机程序开发中,常用中断来实现多任务。
3、通多操作系统实现多任务
如在操作系统中通过“时间片”的方式来实现多任务。
二、操作系统特性
1、并发性(多任务);
2、共享性;
3、异步性;
4、虚拟性。
注:使用操作系统最主要的目的(或者说操作系统最大的价值)是:实现程序的并发性(多任务)。
三、操作系统功能
为了实现程序的并发性和多任务,操作系统对以下资源进行管理。
㈠对处理器管理
对处理器管理是操作系统最核心的部分,它的管理方法决定了整个系统的运行能力和质量,代表着操作系统设计者的设计观念。处理器的分配和运行都是以任务(进程)为基本单位的,具体操作如下:
1、任务控制;
2、任务调度;
3、任务同步;
4、任务同行。
㈡对存储器管理
对存储器管理的目的是为程序并发运行提供良好的环境,方便用户使用存储器、提高存储的利用率、以及从逻辑上扩充内存(比如将硬盘虚拟化为内存)。具体操作如下:
1、内存分配;
2、内存保护;
3、地址映射;
4、内存扩展。
㈢对设备管理
设备管理的主要任务是完成用户提出的I/O请求:为用户分配I/O设备、提高CPU和I/O设备利用率、提高I/O速度,以方便用户使用I/O设备。具体操作如下:
1、缓冲设备;
2、设备分配;
3、设备处理。
㈣对文件管理
以上三种管理都是针对计算机硬件资源的管理。文件(信息)管理则是对系统的软件资源进行管理。
我们一般把程序和数据统称为文件(信息)。一个文件在暂时不用时,被存放在外部存储器(如硬盘、FLASH存储器等)保存起来;使用文件时,把文件从外部存储器读取到内部存储器(内存)上。
四、操作系统接口
为了给用户提供一种方便灵活使用计算机的手段,操作系统给用户提供一个友好的用户接口。具体如下:
1、程序级接口:提供一组系统调用指令(函数)供用户程序或其他系统程序调用,一般是程序员在编写应用程序时才调用程序级接口。
2、作业级接口:提供一组控制操作命令(如Linux命令行)或者图形接口操作(如Windows图形界面),用户通过这些接口取得操作系统(计算机)的服务,并控制使用应用程序,一般是操作系统(计算机)的终端用户在使用计算机是调用作业级接口
五、操作系统的目标
1、方便性;
2、有效性;
3、可扩充性;
4、开放性。
六、操作系统的发展史
七、嵌入式操作系统
㈠嵌入式操作系统特点
1、可裁剪性;
2、与应用代码一起连接(即应用代码与操作系统代码在一起);
3、可移植性;
4、可扩展性;
5、实时性。
㈡微内核与大内核
1、微内核:一般针对嵌入式操作系统。优点是体积小,容易移植,可裁剪(如下图中的“模块”部分可以根据需要裁剪);缺点是操作系统功能不全。
2、大内核:一般针对分时操作系统,如Windows和Linux。