计算机系统通俗讲解

计算机可以直接操作硬件设备吗?

可以。通过对编程语言的翻译控制设备。

那么,要计算机系统这个听起来很重要的东西是干什么的?有用么?

任何好的回答需要好的问题。我觉得这算是个好的问题。

假设:

需要运行的程序=1,那么cpu和程序之间的关系是一对一。

cpu可以毫无保留地支持这个程序的所有指令,并按指令之间的逻辑顺序依次执行。

假设:

需要运行的程序>1,cpu和程序之间的关系是一对多。

为了响应用户的指令,cpu不得不选择间断性执行各个程序。假设有3个程序,那么cpu的资源可能会这样拆分1,2,3;1,2,3;1,2,3......直至程序执行完毕。

(计算机这里本质上追求的不是效率,而是用户的响应度。在讲cpu效率的文章里我们最后抛出了一个问题:用户除了效率还追求什么。这里进行解答。)

那么问题来了,cpu是如何分配资源给这三个程序的?要知道,cpu效率是高,但是很笨。按理来说做不了这种管理分配的事。

怎么办呢?

没有什么事情是加一个中间人解决不了的。

那么这个中间人究竟是谁呀~

还能是谁?计算机上只能是指令,计算机上所有软件资源都是指令。

不过,特殊的是,这一部分指令出现的目的是为了给软件分配硬件资源。(听起来和管理层那个一模一样欸。果然计算机里几乎所有概念在现实里都能找到参照)

那一这部分指令总得有个名字吧,不然这也叫指令,那也叫指令,以后大家还怎么交流呢?

就叫系统吧!

原来指令和编程可以做这么多事呢,连管理这种听起来很高级的事情都会。那么是不是说编程可以做几乎所有事呀!

那我每次启动计算机,都要手动进行一系列复杂的操作,检查硬件设备,检查软件,扫描加载配置文件等的。是不是也可以开发一个软件帮我做事呢?

这个基本的思想叫做复用。

(从计算机:芯片的设计线路;操作系统;软件;函数;循环结构;到日常生活:门口的共享单车;快递站;到我们思考时用的结构和框架:循环结构;递推结构等只要能够反复使用都叫复用。复用是提高效率最有效的办法之一。所以思考的时候体系化思考省很多事。)

这部分关于开机启动的指令适用性足够广,复用程度足够高。和给软件分配硬件资源一样基础。

就一起叫做系统吧。

小结:如果要用几个词形容操作系统:

中间人;指令;基础;复用。

你可能感兴趣的:(程序人生,改行学it,机器学习,人工智能,c语言)