Operating System 简明教程
Operating System Tutorial
操作系统 (OS) 是一组管理计算机硬件资源并为计算机程序提供通用服务的软件。当您开始使用计算机系统时,充当您和计算机硬件之间接口的就是操作系统 (OS)。操作系统实际上是一个低级别 Software ,被归类为 System Software ,并支持计算机的基本功能,例如内存管理、任务调度和控制外围设备等。
本简单易用的教程将带您详细学习操作系统概念,并采用循序渐进的方法。
What is Operating System?
操作系统 (OS) 是计算机用户和计算机硬件之间的接口。操作系统是一种执行所有基本任务的软件,例如文件管理、内存管理、进程管理、处理输入和输出以及控制外围设备(例如磁盘驱动器和打印机)。
通常, Computer System 包含以下组件:
-
Computer Users 是使用整个计算机系统的用户。
-
Application Softwares 是用户直接用来执行不同活动的软件。这些软件简单易用,例如浏览器、Word、Excel、不同的编辑器、游戏等。这些通常用高级语言编写,例如 Python、Java 和 C++。
-
System Softwares 是本质上更复杂的软件,而且它们更接近计算机硬件。这些软件通常是用低级语言编写的,例如汇编语言,并且包括 Operating Systems (Microsoft Windows、macOS 和 Linux)、编译器和汇编器等。
-
Computer Hardware 包括显示器、键盘、CPU、磁盘、内存等。
那么现在让我们用简单的话来说明:
Operating System - Examples
市场上有许多操作系统,包括付费和免费(开源)。以下列出了一些最流行的操作系统示例:
-
Windows: 这是 Microsoft 开发和销售的最流行的商业操作系统之一。它在市场上具有不同的版本,例如 Windows 8、Windows 10 等,其中大多数是付费的。
-
Linux 这是一个基于 Unix,最受欢迎的操作系统,最早由 Linus Torvalds 于 1991 年 9 月 17 日发布。如今,它有 30 多个变体,例如 Fedora、OpenSUSE、CentOS、UBuntu 等。尽管你可以通过支付标称的许可费获得它们的企业版本,但其中的大多数都是免费的。
-
MacOS 这是自 2001 年以来由苹果公司开发和销售的一款 Unix 操作系统。
-
iOS 这是由苹果公司专门为其移动设备(如 iPhone 和 iPad 等)创建和开发的移动操作系统。
-
Android 这是一个基于 Linux 内核以及其他开源软件的修改版本打造的移动操作系统,主要专为智能手机和平板电脑等触屏移动设备而设计。
其他一些古老却流行的操作系统包括 Solaris、VMS、OS/400、AIX、z/OS 等。
Operating System - Functions
简单来说,以下是操作系统的一些重要功能,我们将在后续章节中详细介绍:
-
Process Management
-
I/O Device Management
-
File Management
-
Network Management
-
Main Memory Management
-
Secondary Storage Management
-
Security Management
-
Command Interpreter System
-
Control over system performance
-
Job Accounting
-
Error Detection and Correction
-
协调其他软件和用户
-
更多其他重要任务
Operating Systems - History
多年来,操作系统一直在不断发展。20 世纪 50 年代,计算机仅限于一次运行一个程序,如计算器,但在随后的几十年中,计算机开始包含越来越多的软件程序,有时称为库,这构成了当今操作系统的基础。
第一个操作系统是由通用汽车公司于 1956 年创建的,用于运行单台 IBM 大型计算机,其名称为 IBM 704。IBM 是第一家在 20 世纪 60 年代为其计算机开发操作系统并在其中分发操作系统的计算机制造商。
以下是关于评估操作系统的几个事实:
-
斯坦福研究所于 20 世纪 60 年代末开发了在线系统 (NLS),它是第一个类似于我们今天使用的桌面操作系统的操作系统。
-
微软于 1981 年购买了 QDOS(快速而肮脏的操作系统),并将其定名为 Microsoft 操作系统 (MS-DOS)。从 1994 年起,微软停止支持 MS-DOS。
-
20 世纪 60 年代中期,麻省理工学院、AT&T 贝尔实验室和通用电气公司共同开发了 Unix。最初它被称为 MULTICS,即多路操作和计算机系统。
-
FreeBSD 也是一个流行的 UNIX 派生产品,起源于伯克利的 BSD 项目。所有现代 Macintosh 计算机都运行 FreeBSD(OS X)的修改版本。
-
Windows 95 是一款面向消费者的图形用户界面操作系统,建立在 MS-DOS 之上。它由 Microsoft 于 1995 年 8 月 24 日发布,作为其 Windows 9x 操作系统系列的一部分。
-
Solaris 是一个专有的 Unix 操作系统,最初由 Sun Microsystems 于 1991 年开发。在 2010 年 Sun 被 Oracle 收购之后,它被重新命名为 Oracle Solaris。
Why to Learn Operating System
如果您渴望成为一名优秀的计算机程序员,强烈建议您深入了解操作系统的工作原理。这提供了理解如何将数据确切地保存在磁盘中、不同的进程如何被创建并被 CPU 调度运行、如何与不同的 I/O 设备和端口交互的机会。
有许多底层概念帮助程序员设计和开发可扩展的软件。底线是,如果没有对操作系统概念的很好理解,不能认为某人是一位优秀的计算机 Application Software 开发人员,而且甚至无法想象有人在深入了解操作系统之前成为 System Software 开发人员。
如果您是一名大一新生并申请在 Google、Microsoft、Amazon、IBM 等任何标准公司中担任工作,那么很有可能您会被询问有关操作系统概念的问题。
Target Audience
此教程已为计算机科学专业人员和学生编写,特别是 BCA、MCA、B.Tech、M.Tech 工程专业学生,旨在帮助他们了解与操作系统相关的基础到高级概念。操作系统是每个教授计算机科学的大学的核心概念之一,并且这一科目在考试中举足轻重。
Prerequisites
在您开始使用本教程学习操作系统之前,我们假设您已经了解计算机基础知识,例如什么是计算机硬件、CPU、主存储器、辅助存储器、设备、文件等。如果您不了解这些概念,将很难理解有关操作系统相关的不同内容,因此強烈建議您在嘗試學習操作系统之前先通讀我們的 Computer Fundamentals Tutorial 。