操作系统——批处理操作系统

cpu的四大任务:

和内存要指令、翻译指令、执行指令和将结果写入内存。

单道批处理操作系统:

同时只在内存中加载一道程序,但是遇到I/O相关的数据,则需要到硬盘处获取数据,该操作速度缓慢,会导致cpu空闲。因此引入了多道批处理操作系统。

多道批处理操作系统:

在内存中同时载入多道程序,当遇到I/O等耗时操作时,cpu切换到其他程序执行,该操作使得cpu的使用率得到有效提升。但是程序运行结束后,需要合适的内存分配算法。此外,当内存中载入多道程序后,各程序都默认其首地址是从0开始,因此存在程序操作的地址空间超出自身地址范围,因此引入了地址重定位。即将其操作地址在运行时加上起始地址,并在操作前判断其操作地址是否在自身程序的地址范围内。如果不在则dump。但随着计算机软件的迅速发展,代码体积越来越大,因此出现了虚拟内存。

虚拟内存出现的前提是其程序可能比内存要大得多,而程序又存在时间和空间的局部性,因此提出将虚拟内存分为一个个4k的页框,而存在磁盘中的程序则分为一个个4k的页,多道程序只有运行到某页时才将该页载入内存,当需要软件的某页时,通过页和页框的映射表可将虚拟地址转换为物理地址,由此将软件的页载入内存。如果所需页不在内存,则触发操作系统的缺页中断,由操作系统进行加载。

由于多道程序可能需要操作的同一套数据,因此除了分页外,还将内存分为代码段、数据段和堆栈段,分页和分段的机制由此得来。

你可能感兴趣的:(操作系统——批处理操作系统)