jsp是否可以做网站,网站开发流程的意义,建筑网站翻译编辑,做网页价格什么是冯诺依曼体系结构#xff1f; 如图即为冯诺依曼大致的体系结构图#xff0c; 我们知道这些都是由我们的计算机硬件组成
输入设备#xff1a;键盘#xff0c; 鼠标#xff0c; 摄像头#xff0c; 话筒#xff0c; 磁盘#xff0c; 网卡...
输出设备#xff1a…什么是冯诺依曼体系结构 如图即为冯诺依曼大致的体系结构图 我们知道这些都是由我们的计算机硬件组成
输入设备键盘 鼠标 摄像头 话筒 磁盘 网卡...
输出设备显示器 声卡 磁盘 网卡...
CPU运算器和控制器
存储器内存
在上图冯诺依曼体系结构图中我们可以看到红色箭头都代表的是数据的流动那我们就要研究数据在我们的计算机的冯诺依曼体系结构中是怎么流动的呢
这里给出结论数据流动从一个设备到另一个设备本质是一种拷贝
而CPU处理数据是非常快的那我们又可以得出一个结论设备间的拷贝效率决定了计算机整机的效率。 在我们的冯诺依曼结构中我们的输入输出设备是不能直接与CPU打交道的 原因在于CPU的速度实在是太快了 而输入输出设备又相对比较慢这样与CPU打交道就像木桶效应版会拖慢整机速度。
所以我们的祖师爷冯诺依曼就想出了这么个解决办法这就引出了内存 让内存与CPU直接打交道这样输入输出设备都无需与CPU交互直接面向内存就可完成任务。
如何理解冯诺依曼的体系结构带来的意义 上图为存储金字塔。
存储距离CPU越近效率越高 容量越小 成本越高。
故冯诺依曼体系的结构不就是能够使现在的我们家家户户都可买得起电脑。这不是大大的使计算机得到了大范围的普及所以冯诺依曼体系结构对于我们的社会现实意义确实是重大的
也就是说 没有祖师爷冯诺依曼就没有现在的我们 在硬件数据流动角度 在数据层面
CPU不和外设直接打交道只和内存打交道外设输入和输出不是直接把数据给CPU的而是先要放入内存中 能干什么
1.程序运行为什么要加载到内存
程序 代码 数据 程序“数据”都需要被CPU访问 -》CPU只会在内存中读取代码和数据
程序没有被加载到内存时 是什么答案是磁盘中的二进制文件即在外设中。
-》CPU只会在内存中读取代码和数据
这些都是冯诺依曼体系结构决定的 一种场景 假设我通过qq这款应用程序要给小明发个消息为“你好”数据是怎么传输的呢
我们按照冯诺依曼体系结构来说 即我们将通过输入设备即键盘输入数据然后再写入内存内存交给CPU进行加密操作 CPU还给内存 内存再把加密后的数据交给输出设备即网卡原因我们是在网络中传输数据 所以需要网卡 然后中间是一系列网络传输由于尚未学习略去 经过网络传输的数据就来到接收方小明的输入设备即网卡 然后写入到内存中 内存交给CPU进行解密 解密完成 返还给内存 内存把 数据再交给输出设备即显示器显示到屏幕上 这样一个在冯诺依曼体系结构下的数据传输的过程就完成了 操作系统
1.概念
操作系统本质是一款软件。
进行软硬件 资源 管理的软件
广义的理解操作系统的内核 操作系统的外壳周边程序给用户提供使用操作系统的方式
狭义操作系统的内核
2.结构示意图不完整 如上图为体系结构的层状划分结构
操作系统的内核实质上就是操作系统进行着各种资源的管理。 为什么要有操作系统
对软硬件资源进行管理手段。
为用户提供一个良好稳定的高效的安全的的运行环境目的。
3.尝试理解操作系统 理解操作系统之前我们先要理解
什么是“管理”
我们生活中的所有事情都要经过两步1.决策 2.执行
那么举个栗子我们学校的校长要管理这个学校的学生他要怎么做
我们是不是到了大学我们可能就开学毕业见过两次但平常是完全没有接触的。
校长要想管理一个学校这么多人不可能一个一个去接触吧人这么多怎么管理的过来呢
假如校长是个程序员
可以写个结构体将我们的各项属性写入结构体中去。
但校长是如何进行管理然后进行资源分配呢
所以说校长管理我们不需要与我们直接接触
即管理者与被管理者无需直接接触
校长管理我们实际上是拿取我们的各项数据进行管理的。
而我们的数据哪里来的呢
这些数据是由辅导员来与我们进行统计打包发给校长校长再进行数据的管理。
这样校长对于学生的管理就变为对链表的增删查改
这里我们就可以认为校长是操作系统 辅导员即是驱动程序 学生与学校的各种设施就是各种软硬件资源。
这样就进行了我们的一个完整的管理流程。
结论就是 管理先描述在组织
描述就是封装为一个一个对象即用一个类或者对象进行封装而组织就是在操作系统中用我们的各种数据结构进行组织。
完整结构示意图 如上图为一个完整的结构示意图
我们知道操作系统是一个对下进行软硬件资源管理手段对上提供一个良好稳定的高效的安全的的运行环境目的。
但我们用户需要使用操作系统来管理软硬件我们能直接接触操作系统吗
答案是不能操作系统不允许你这样做我们应该都去过银行取钱吧我们去银行取钱我们能自行到仓库去取钱吗不能吧那不是全乱套了想取多少就取多少
所以就有前台服务只开一个小窗口与内部交互。
这在操作系统就叫做系统调用接口操作系统为我们提供了一系列系统调用接口
我们可以拿来用但又有个问题发生了
操作系统是由不同厂商进行生产的系统调用接口就会有一些不同那怎么办这样就出现了跨平台问题这就为上层又出现了一个外壳各种库即一些c/c标准库的内容这些库能够很好的解决跨平台问题
所以我们在下载编译器实际是下载的什么 对应的标准库和编译器
如我们之前学习的c语言就有printf/scanf都与硬件进行了交互这些都是标准库提供的函数接口用到调用系统调用接口因为不同厂商他们提供的操作系统的接口不同
所以总的来说还是下面两句话
对软硬件资源进行管理手段。
为用户提供一个良好稳定的高效的安全的的运行环境目的。