青岛php网站建设,国外网络推广哪家公司好,.net网站开发实站,手机做网站哪家好文章目录#x1f3aa; 冯诺依曼体系结构#x1f680;1.体系概述#x1f680;2.CPU和内存的数据交换#x1f680;3.体系结构中数据的流动#x1f3aa; 操作系统概念理解#x1f680;1.简述#x1f680;2.设计目的#x1f680;3.定位#x1f680;4.理解#x1f680;5.管… 文章目录 冯诺依曼体系结构1.体系概述2.CPU和内存的数据交换3.体系结构中数据的流动 操作系统概念理解1.简述2.设计目的3.定位4.理解5.管理的本质6.系统调用冯诺依曼体系结构
数学家冯·诺依曼提出了计算机制造的三个基本原则即采用二进制逻辑、程序存储执行以及计算机由五个部分组成运算器、控制器、存储器、输入设备、输出设备这套理论被称为冯·诺依曼体系结构。
1.体系概述
现代计算机发展所遵循的基本结构形式始终是冯·诺依曼机结构。这种结构特点是“程序存储共享数据顺序执行”需要 CPU 从存储器取出指令和数据进行相应的计算。 输入设备包含键盘话筒摄像头网卡磁盘(I) 存储器包含内存(寄存器、高速缓冲存储器以及主存储器操作系统关机数据不复存在)和外存(硬盘软盘CD磁带操作系统关机数据也可保存) CPU包含运算器(数据流计算交换)和控制器(接收指令和发出控制指令) 输出设备包含显示器磁盘网卡声卡声响
比如我们上qq聊天我们需要把聊天内容通过键盘输入给计算机(通过键盘这种输入设备)然后消息发出显示到对方屏幕上(这时对方显示器就是输出设备)
而且它们的运行速度也有很大差异在市面上可以几百块钱可以买到512G或者1T的硬盘而内存只能买到8G或者12G的显然同等存储空间下内存比硬盘要贵很多那么同等地它的速度也会比硬盘或者外设快很多。
而越昂贵它的速度也就越块运行速度CPU 内存 外设
2.CPU和内存的数据交换
既然前面说了CPU速度是最快的那么为什么还要存在内存呢直接把CPU连到外设是不是会大大提升效率 答案是否定的举个例子来说CPU工作的速度是纳秒级而内存是微秒级最后外设是毫秒级如果CPU直接跟外设打交道那么将是纳秒跟微秒的对比CPU造价最贵自然速度也就最快那么它的时间将是很昂贵的一个外设输入就会占用很多CPU的时间这就跟木桶原理是一样的
木桶所能盛放的最大水量取决于最短的那块木板而不是最长的那块所以CPU如果直接跟外设打交道那么计算机的运行速度完全取决于外设的速度而CPU那么快的速度显然是浪费掉了这时便引入了内存。
内存的访问速度比外设快但是又比CPU慢CPU可以直接从内存中拿到数据放进CPU计算的同时DMA可以把外设的东西调到内存下次CPU就可以直接从内存中拿取数据。
这就是为什么我们打开一个程序的时候需要先把数据加载到内存中然后再交给CPU运行因为这是体系结构决定的
结论在数据层面CPU一般不和外设沟通而是只和内存打交道
3.体系结构中数据的流动
我们下面模拟一下qq消息在两台主机中的传递 数据先由张三的键盘输入晚安然后该消息被刷新到我们自己的显示器上然后点击发送这期间由DMA将数据调入内存内存中数据在调入CPU进行加密然后将加密后的数据返回给网卡网卡在通过网络进行输出给另一台主机另一台主机的网卡(此时网卡为输入设备)接收到数据将数据给CPU进行解密最后显示到对方李四的显示器上。
结论在数据层面上外设一般不直接和CPU打交道而是和内存打交道 操作系统概念理解
在计算机中操作系统是其最基本也是最为重要的基础性系统软件。从计算机用户的角度来说计算机操作系统体现为其提供的各项服务从程序员的角度来说其主要是指用户登录的界面或者接口如果从设计人员的角度来说就是指各式各样模块和单元之间的联系。事实上全新操作系统的设计和改良的关键工作就是对体系结构的设计经过几十年以来的发展计算机操作系统已经由一开始的简单控制循环体发展成为较为复杂的分布式操作系统再加上计算机用户需求的愈发多样化计算机操作系统已经成为既复杂而又庞大的计算机软件系统之一
1.简述
操作系统OS是一组主管并控制计算机操作、运用和运行硬件、软件资源和提供公共服务来组织用户交互的相互关联的系统软件程序。根据运行的环境操作系统可以分为桌面操作系统手机操作系统服务器操作系统嵌入式操作系统等
操作系统包含
内核进程管理内存管理文件管理驱动管理其他程序例如函数库 shell程序等等
2.设计目的
与硬件交互管理所有的软硬件资源为用户程序应用程序提供一个良好的执行环境
3.定位
一款进行软硬件资源管理的软件
4.理解
我们应该如何理解操作系统对硬件做管理呢比如在IT公司中有boss还很多个团队每个团队有队长和队员我们可以拿boss - 队长 - 队员来解释。
在每个IT公司中boss会做决策比如开发某款产品然后他会把任务下发给对应的团队团队队长便会根据这个来组织队员进行软件的开发
在以上的描述中
boss决策(管理者)队长决策被执行队员参与执行(被管理者) 在上述例子中我们看到boss是不需要跟队员直接沟通达到执行决策的目的的也就是1.管理者和被管理者是不需要直接沟通的
那既然管理者和别管理者不需要直接沟通那怎么做到管理的呢我们想像一下如果IT公司的员工订了一份外卖此时外卖小哥把外卖送到了员工的办公桌上那么他进入了公司大楼但他是公司的员工吗显然不是要被定义为公司员工得在公司电脑上能查到该员工的信息才行不是进入公司大楼的就是该公司员工。同样的假如说一个员工被炒鱿鱼了他人离开公司就行了吗显然不是该公司需要删除这个员工的信息才行。所以说管理的本质是2.对被管理对象的数据做管理
那么boss怎么拿到员工数据呢这就需要每个团队的队长反馈队员数据给bossboss才能拿到员工数据。也就是3.管理者通过一种媒介(这里是队长)拿到被管理者数据
所以说我们操作系统也是如此 操作系统通过硬件驱动实现对硬件进行管理。
5.管理的本质
正如我们上文所说队长把队员数据交给boss那么boss怎么看呢一个大的IT公司至少有几百上千人boss如果想查找业绩最低的人员开除那岂不是得找很久于是boss就想了一个办法把所有队员的数据用一个类描述出来比如叫Programmer这个类里面有成员姓名(name)年龄(age)业绩(achievement)等基本信息这就叫数据的描述然后每个人员的信息我们便可以清楚的看到 如果我们要查找人员信息呢我们得用一种数据结构来组织每个人员的基本信息 比如boss想用二叉树来组织 此时我们只需要遍历这棵二叉树即可实现对员工信息的查找操作系统也是比如进程管理操作系统会用PCB来描述进程的结构又比如内存管理操作系统会用页表来管理内存
总之管理就是先描述在组织这句话会贯穿我们Linux的整个学习过程
6.系统调用
操作系统的作用是对下提供管理好软硬件资源、对上给用户提供良好(安全高效稳定功能丰富)的良好环境“系统调用”是操作系统提供给应用程序程序员/编程人员使用的接口可以理解为一种可供应用程序调用的特殊函数应用程序可以发出系统调用请求来获得操作系统的服务。会使处理器从用户态进入核心态
我们所熟知的系统调用有
GUI(图形化界面)shell和命令行C函数(stdio.h)