什么是操作系统 ?WHAT IS AN OPERATING SYSTEM?

Posted 东海陈光剑

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是操作系统 ?WHAT IS AN OPERATING SYSTEM?相关的知识,希望对你有一定的参考价值。

WHAT IS AN OPERATING SYSTEM?

Operating systems turn ugly hardware into beautiful abstractions.

Operating System:

1.A clean abstract set of resources instead of the messy hardware ones and managing these 

hardware resources ( … instruction set, memory organization, I/O, and bus structure ).

2.No sane programmer would want to deal with this disk at the hardware level. Instead, a piece of software, called a disk driver, deals with the hardware and provides an interface to read and write disk blocks, without getting into 

the details. Operating systems contain many drivers for controlling I/O devices. 

But even this level is much too low for most applications. For this reason, all operating systems provide yet another layer of abstraction for using disks: files. Using this abstraction, programs can create, write, and read files, without having to deal with the messy details of how the hardware actually works.

3.This abstraction is the key to managing all this complexity. Good abstractions turn a nearly impossible task into two manageable ones. The first is defining and implementing the abstractions. The second is using these abstractions to solve the problem at hand. One abstraction that almost every computer user understands is the file, as mentioned above. 

什么是操作系统?

操作系统把丑陋的硬件变成美丽的抽象。

操作系统:

1.一个干净的抽象资源集,而不是混乱的硬件资源集,并管理这些资源

硬件资源(...指令集、内存组织、I/O和总线结构)。

2.没有一个理智的程序员会想在硬件层面处理这个磁盘。相反,一个叫做磁盘驱动程序的软件处理硬件,并提供一个读写磁盘块的接口,而不需要进入操作系统包含许多用于控制I/O设备的驱动程序。但是对于大多数应用程序来说,即使是这个级别也太低了。

出于这个原因,所有的操作系统都为使用磁盘提供了另一个抽象层:文件。使用这个抽象,程序可以创建、写入和读取文件,而不必处理硬件实际工作方式的混乱细节。

3.这个抽象是管理所有这些复杂性的关键。好的抽象将一个几乎不可能的任务变成两个可管理的任务。第一个是定义和实现抽象。第二个是使用这些抽象来解决手头的问题。几乎每个计算机用户都理解的一个抽象是文件,如上所述。

以上是关于什么是操作系统 ?WHAT IS AN OPERATING SYSTEM?的主要内容,如果未能解决你的问题,请参考以下文章

Terminology: What is an Object?

Data type confusion: what is an int(11)?

What is content-type and datatype in an AJAX request?

What is a shell and what is Bash?

What is MongoDB and For What?

设置java系统属性的最佳实践是什么,-D或System.setProperty()?(What is best practice for setting java system properties