18 操作系统(Operating Systems)

197 阅读3分钟

18. 操作系统-Operating Systems_哔哩哔哩_bilibili

1. 简介

在第 18 集中,视频主要介绍了操作系统(Operating Systems)的发展历史、功能和重要性。视频回顾了从 1950 年代计算机只能运行单个程序到现代操作系统支持多任务处理、多用户和内存保护的演变过程。

2. 计算机早期的程序运行方式

2.1 单一程序运行

  • 1940 和 1950 年代,计算机每次仅能运行一个程序。
  • 程序员通过打孔纸卡编写程序,然后交给计算机操作员载入计算机运行。

2.2 批处理系统的诞生

  • 计算机速度加快,手动加载程序耗时变得难以接受。
  • 批处理系统允许一次性加载多个程序,计算机自动运行一个程序后接着运行下一个,减少了人工干预时间。

3. 操作系统的出现

3.1 管理外设的难题

  • 早期计算机配置不同,程序员需要编写大量低级代码与不同型号的外设交互。
  • 操作系统通过设备驱动程序(device drivers)简化了这一过程,提供标准化接口,减轻了程序员的负担。

3.2 虚拟内存和内存保护

  • 虚拟内存技术允许程序假定内存是连续的,而操作系统在幕后处理实际的物理地址。
  • 内存保护确保程序在遇到错误时只影响自身内存,不干扰其他程序,有效提升了系统的稳定性和安全性。

虚拟内存

4. 多任务处理和时间共享

4.1 Atlas Supervisor

  • 1962 年,英国曼彻斯特大学的 Atlas 计算机上实现了多任务处理(multitasking),能够通过调度机制在单个 CPU 上同时运行多个程序,提高了计算资源的使用效率。

4.2 多用户系统

  • 1970 年代,计算机快速发展,支持多用户同时使用。
  • 这一时期的多用户系统需要分时操作系统(time-sharing OS)来公平分配计算资源,使得每个用户都能有效利用计算机。

5. 安全性与简约设计

5.1 Multics 操作系统

  • 1969 年发布的 Multics 系统从设计初期就着重于安全性,但是复杂的设计导致其运行效率不佳。

5.2 Unix 操作系统

  • 为了简化操作系统,Dennis Ritchie 和 Ken Thompson 开发出 Unix,将核心功能(kernel)与其他工具分开,保持系统简洁高效。

6. 个人电脑的兴起

  • 1980 年代初,个人电脑普及,需要简单实用的操作系统。
  • MS-DOS 成为早期家用电脑的主流操作系统,虽然缺乏多任务和内存保护,但基于其简便性,接受度高。

7. 现代操作系统

  • 现代操作系统如 Mac OS X、Windows 10、Linux、iOS 和 Android 支持多任务处理、虚拟内存和内存保护,可以同时运行多个程序,极大提升了计算机的使用体验和效率。

8. 总结

  • 操作系统的诞生解决了早期程序运行的手动操作问题。
  • 操作系统通过设备驱动和虚拟内存简化了程序与硬件交互的复杂性。
  • 多任务处理和内存保护是操作系统的关键功能,提升了资源利用率和安全性。
  • Unix 和后来的操作系统将核心功能和工具分离,优化系统设计。
  • 个人电脑的兴起推动了简易操作系统的发展,而现代操作系统则更为复杂和功能丰富。