【哈工大李治军】操作系统课程笔记3:操作系统系的历史

1、历史主线1:多进程

通过了解操作系统的历史,来抓住操作系统研究的重点。
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第1张图片
批处理操作系统(Batch system):一个作业完成后,自动读入下一个作业进行执行。只专注于计算,不会做其他任务。

IBM7094 执行流程:
当第一个任务出错或者执行完成将任务输出到磁带上,然后就会修改PC指针,指向下一个任务进行执行。

【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第2张图片
随着计算机的造价越来越便宜,就慢慢的出现在了各行各业当中。我们就需要让一台计算机干很多事,但此时如果仍然采用批处理的操作系统就会很不合适,不能并行执行任务,效率不够高。因此,就出现了多道程序(multiprogramming)的设计,可以让作业之间交替切换执行。

作业之间的切换和调度成为核心。
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第3张图片

除了出现多个任务以外,还出现了多人使用一台计算机的情况,每个人对应一个计算机任务。如果一个人占用计算机时间过长,就会导致其他人长时间得不到计算机的响应。这是就引入了分时的概念,每个人都可以执行一小段时间,总体上就会给用户感觉系统一直在为其提供服务。

分时系统(timesharing)的核心仍然是任务切换,与上面的多任务操作系统没有太多本质的区别,但资源复用的思想对操作系统影响很大,虚拟内存就是一种复用

【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第4张图片
当小型化计算机出现时,售价仅为7094的5%,售价120,000美元,相当于是美国人一年的工资,越来越多的个人可以使用计算机。上面两个人就在贝尔实验室里,用一台PDP-7开发了一个简化的MULTICS,就是后来的UNIX
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第5张图片
在PC机推出以后,个人计算机开始普及。上面这个人就在PC机上开发了一个类似于UNIX的操作系统MINIX用于教学。而他后来在做出这个系统之后,将他以开源的形式发布到了网上,就在之后展开了一场轰轰烈的Linux产业化运动。

【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第6张图片
多进程是操作系统的基本图谱! 因此,我们的学习任务的核心之一是 掌握操作系统的多进程图谱并实现它!

2、历史主线2:文件操作

【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第7张图片
CP/M:写命令让用户用,执行命令对应的程序,但任务执行。

之后,在CP/M的基础上又开发了QDOS(Quick and Dirty OS)
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第8张图片
QDOS是以CP/M为基础将BASICFAT包含了进来。后来微软买下了QDOS,改名为MS-DOS(Disk OS)和IBM PC打包一起出售。
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第9张图片
文件、开发环境、图形界面对OS的发展至关重要。
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第10张图片
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第11张图片
程序执行、多进程、程序执行带动其他设备使用的基本结构仍然是操作系统的核心思想和技术,但用户的使用感觉更加受到重视,即各种文件、编程环境、图形界面。

掌握、实现操作系统的文件操作视图是我们学习和掌握操作系统另一个核心任务!

总结

在后续的课程中,首先,我们会研究多进程图谱,从而会引出CPU内存相关的知识。然后,我们会研究文件操作视图,从而引出I/O磁盘相关的知识。
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第12张图片
我们的主要任务
(1)进程视图:CPU管理和内存管理
(2)文件视图:磁盘管理和中断设备管理
这四个管理,已经能让我们管理单级(单个CPU)。
【哈工大李治军】操作系统课程笔记3:操作系统系的历史_第13张图片
再具体一点来看,
多进程: 进程的管理主要是通过fork()、内存管理主要是通过地址(*p=7)。

文件视图: 设备驱动(对应操作设备的文件),通过操纵某一文件就可以操作对应文件的设备。通过open操作来操控文件,文件分为普通文件设备文件

你可能感兴趣的:(操作系统,linux,系统架构)