admin管理员组文章数量:1037775
【Linux篇】从冯诺依曼到进程管理:计算机体系与操作系统的核心逻辑
1.冯诺依曼体系结构
我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。
截至目前,我们所认识的计算机,都是由一个个的硬件组件组成
- 输入单元:包括键盘,鼠标,扫描仪,写板等
- 中央处理器(CPU):含有运算器和控制器等
- 输出单元:显示器,打印机等
再次强调: 程序运行时必须先从磁盘加载到内存,CPU获取写入只能从内存中拿数据,CPU执行我们的代码,访问我们的数据,数据从一个设备“拷贝”到另一个设备 体系结构的效率:由设备的拷贝效率决定 结论: CPU在数据层面只和内存打交道,外设只和内存打交道
存储分级
由于外设的速度比较慢,CPU的速度较快,所以外设和CPU之间就存在木桶原理,内存的出现让CPU和外设的速度更匹配。 冯诺依曼体系结构的存在使得电脑变便宜了。
理解数据流动
两个人如果在微信上面聊天,本质上是两个冯诺依曼体系之间的信息流通,发信息的人通过输入设备“键盘”进行输入。我们发微信首先得打开登陆微信,即把微信的可执行程序加载到内存。所以在键盘里输入根据冯诺依曼体系是把键盘数据搬到内存(硬件层面),软件层面是把数据交给微信 ,所以数据流动就从输入数据流到存储器。微信信息比如说要加密,把数据“你好”(发送的数据)经过运算器控制,运算器运算完毕之后把“你好”转化成了一个乱码的结构,然后再有CPU
写入内存,再由微信把你自己的数据传输到输出设备 ,用户a
的输出设备是网卡,网卡把数据交到网络里,通过网络再把数据交给用户b
。用户b
的输入设备拿到数据,而用户b的输入设备只能是网卡,输入设备拿到数据放到内存里,用户b
也必须启动微信,启动的微信也在内存里,在微信里读到的代码再交给CPU
,将乱码数据解密成“你好”,再通过存储器刷新到输出设备上,这个输出设备就是显示器。
那如果是发送文件呢???
其实文件的本质也是数据,当我们把文件拖到微信程序时,在没拖之前文件是在磁盘上,本质上是把磁盘文件拷贝到微信里面,在经过运算器加密包装回到存储器,在经过网卡发送,对方通过网卡接受,接收后首先要把文件数据读到内存,通过运算器解包解密写回内存,然后把数据写到输出设备。
总结:
- 聊天: 是把用户数据从键盘经过体系结构转发到对方显示器的工作。
- 发送文件: 本质是把文件从本地磁盘经过体系结构拷贝至对方磁盘的过程。
2. 操作系统(Operator System)
2.1 概念
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:
- 内核(进程管理,内存管理,文件管理,驱动管理)
- 其他程序(例如函数库,shell程序等等)
操作系统本质是一款进行软硬件管理的软件
2.2 设计OS的目的
操作系统上面不仅有硬件,而且还有软件
- 对下,与硬件交互,管理所有的软硬件资源
- 对上,为用户程序(应用程序)提供一个良好的执行环境
- 软硬件体系结构是一个层状的结构
- 访问操作系统,必须用系统调用–其实就是函数,只不过是系统提供的
- 我们的程序,只要判断出访问了硬件,那么它必须贯穿整个软硬件体系结构
- 库可能在底层封装了系统调用
2.3 核心功能
- 在整个计算机软硬件架构中,操作系统的定位是:一款纯正的“搞管理”的软件
2.3.1 如何理解"管理"
- 管理的例子 - 学生(被管理者),辅导员(执行权),校长(决策权)
操作系统就如同校长一样具有决策权
,驱动程序就如同辅导员具有执行权
,底层硬件就如同学生被管理
- 要管理,管理者和被管理者不需要见面
- 管理者和被管理者,根据“数据”进行管理
- 不需要见面如何得到数据呢?由中间层(辅导员)获取
【Linux篇】从冯诺依曼到进程管理:计算机体系与操作系统的核心逻辑
1.冯诺依曼体系结构
我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。
截至目前,我们所认识的计算机,都是由一个个的硬件组件组成
- 输入单元:包括键盘,鼠标,扫描仪,写板等
- 中央处理器(CPU):含有运算器和控制器等
- 输出单元:显示器,打印机等
再次强调: 程序运行时必须先从磁盘加载到内存,CPU获取写入只能从内存中拿数据,CPU执行我们的代码,访问我们的数据,数据从一个设备“拷贝”到另一个设备 体系结构的效率:由设备的拷贝效率决定 结论: CPU在数据层面只和内存打交道,外设只和内存打交道
存储分级
由于外设的速度比较慢,CPU的速度较快,所以外设和CPU之间就存在木桶原理,内存的出现让CPU和外设的速度更匹配。 冯诺依曼体系结构的存在使得电脑变便宜了。
理解数据流动
两个人如果在微信上面聊天,本质上是两个冯诺依曼体系之间的信息流通,发信息的人通过输入设备“键盘”进行输入。我们发微信首先得打开登陆微信,即把微信的可执行程序加载到内存。所以在键盘里输入根据冯诺依曼体系是把键盘数据搬到内存(硬件层面),软件层面是把数据交给微信 ,所以数据流动就从输入数据流到存储器。微信信息比如说要加密,把数据“你好”(发送的数据)经过运算器控制,运算器运算完毕之后把“你好”转化成了一个乱码的结构,然后再有CPU
写入内存,再由微信把你自己的数据传输到输出设备 ,用户a
的输出设备是网卡,网卡把数据交到网络里,通过网络再把数据交给用户b
。用户b
的输入设备拿到数据,而用户b的输入设备只能是网卡,输入设备拿到数据放到内存里,用户b
也必须启动微信,启动的微信也在内存里,在微信里读到的代码再交给CPU
,将乱码数据解密成“你好”,再通过存储器刷新到输出设备上,这个输出设备就是显示器。
那如果是发送文件呢???
其实文件的本质也是数据,当我们把文件拖到微信程序时,在没拖之前文件是在磁盘上,本质上是把磁盘文件拷贝到微信里面,在经过运算器加密包装回到存储器,在经过网卡发送,对方通过网卡接受,接收后首先要把文件数据读到内存,通过运算器解包解密写回内存,然后把数据写到输出设备。
总结:
- 聊天: 是把用户数据从键盘经过体系结构转发到对方显示器的工作。
- 发送文件: 本质是把文件从本地磁盘经过体系结构拷贝至对方磁盘的过程。
2. 操作系统(Operator System)
2.1 概念
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:
- 内核(进程管理,内存管理,文件管理,驱动管理)
- 其他程序(例如函数库,shell程序等等)
操作系统本质是一款进行软硬件管理的软件
2.2 设计OS的目的
操作系统上面不仅有硬件,而且还有软件
- 对下,与硬件交互,管理所有的软硬件资源
- 对上,为用户程序(应用程序)提供一个良好的执行环境
- 软硬件体系结构是一个层状的结构
- 访问操作系统,必须用系统调用–其实就是函数,只不过是系统提供的
- 我们的程序,只要判断出访问了硬件,那么它必须贯穿整个软硬件体系结构
- 库可能在底层封装了系统调用
2.3 核心功能
- 在整个计算机软硬件架构中,操作系统的定位是:一款纯正的“搞管理”的软件
2.3.1 如何理解"管理"
- 管理的例子 - 学生(被管理者),辅导员(执行权),校长(决策权)
操作系统就如同校长一样具有决策权
,驱动程序就如同辅导员具有执行权
,底层硬件就如同学生被管理
- 要管理,管理者和被管理者不需要见面
- 管理者和被管理者,根据“数据”进行管理
- 不需要见面如何得到数据呢?由中间层(辅导员)获取
本文标签: Linux篇从冯诺依曼到进程管理计算机体系与操作系统的核心逻辑
版权声明:本文标题:【Linux篇】从冯诺依曼到进程管理:计算机体系与操作系统的核心逻辑 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1748356974a2290291.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论