概述
1、计算机基本部件
1.1五大部件
基于冯诺伊曼体系,将计算机分为5大组成部分:
运算器
:也叫算数逻辑单元,完成对数据的各种常规运算,如加减乘除,也包括逻辑运算,移位,比较等。要注意PC机32位或64位表示的是运算器计算能力,ALU的宽度,一次计算能够计算的数据的位数。控制器
:它是整个计算机系统的控制中心,它指挥计算机各部分协调工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。存储器
:存储程序和各种数据。输入设备
:把人所熟悉地信息,如,图片,声音,文字,转换为计算机能够识别地信息存储起来。输出设备
:把计算机能识别地信息转换为人能识别地信息,及逆行呈现。
CPU包含控制器和运算器,内存就是存储器,I/O设备就是输入设备和输出设备,如键盘,显示器,鼠标等。在计算机中通过总线将这些部件连接,如下图:
1.2总线
总线主要分为3类:
6. 数据总线
:用来在各个功能部件中间传递数据,是双向传输总线。
7. 地址总线
:用来指出数据总线上的源数据或目的数据在主存单元的地址或I/O设备的地址,寻址能力和总线根数有关。
8. 控制总线
:由于各个连接在数据总线和地址总线的部件都是共享这两类总线的,那么在某一时刻谁来使用,就是控制总线负责完成的,即控制传输方向。
1.3存储器
我们常用的存储器可以分为以下几种:
寄存器,缓存,主存是临时存储,即计算机断电或关机数据就会消失,而后面的几个是永久性存储。
1.4指令
指令
:是只是计算机执行某种操作的命令,一条指令通常由两部分构成,地址码,操作码。程序
:由一条条的指令构成。指令周期
:cpu每取出并执行一条指令所需的全部时间称为指令周期。指令系统
:计算机能够执行的全部指令的集合称为该计算机的指令系统。RISC
:精简指令系统计算机,如单片机。CISC
:复杂指令系统计算机,如PC机。程序和指令
:高级语言写出程序,编译器翻译为汇编助记符,机器指令,让计算机执行的二进制。
1.5并行 && 并发
并行
:两个进程一起运行。并行需要硬件支持,多个CPU。并发
:两个进程根据时间片轮询运行,因为时间短,故给人的感觉就是一起运行。并发效率慢,但一个CPU即可。
3、内存管理
3.1分页
-
操作系统将内存划分为大小相等的4k的块,称为页帧,会对页帧进行编号。
-
程序在磁盘上存储,把磁盘分为4k大小的块,称为页,每一个页会记录页对应的权限。
-
如果运行一个程序,操作系统将程序的页加载到内存的页帧上。操作系统会为每一个进程维护一个页表,页表中存储的是进程的页到内存的页帧的映射。
-
物理地址
:真实的物理内存上的偏移地址。逻辑地址
:在程序上的偏移地址
【举个栗子】a:在 2号页上,偏移 128字节。访问a时,需要转换为物理地址:先根据页表将2号映射为17号页帧,偏移128,那么我们转为实际物理地址:17*4k+128,这才是a在内存上存储的真正地址。 -
在程序中直接访问的是逻辑地址,在CPU访问逻辑地址时,需要通过地址映射到其物理地址,才能访问此地址上的数据或指令。
【举个栗子】printf(“&a=%x”,&a)为a的逻辑地址;所以如果在两个进程中打印的变量的地址相等,并不能证明这两个变量是同一个变量,因为加载的物理内存不一样,所以不一定。
3.2虚拟内存
- 他将主存看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,使得能够运行比内存大得多的进程
- 他为每一个进程提供了一致的地址空间,从而简化了存储管理
- 他保护每个进程的地址空间而不被其他进程破坏
交换分区
:在磁盘上开辟一块空间,以内存管理方式来管理,作为对内存的补充,一个内存的所有页不一定非得在内存上存储,这就用到页面置换算法,将内存上的页和交换分区的页置换。
4、操作系统的发展
操作系统:管理计算机上的软硬件资源,为用户提供一个交互的接口。
- 串行处理:程序一个一个按顺序提交处理
- 批处理:一次提交多个程序,最后给一个处理,减少交互。其中过程还是串行
- 多道程序设计:一次提交多个程序,多个同时执行,和并行类似
- 分时系统:类似并发,提交多个,轮询处理。
最后
以上就是动听招牌为你收集整理的【Linux】——操作系统基础知识1、计算机基本部件3、内存管理4、操作系统的发展的全部内容,希望文章能够帮你解决【Linux】——操作系统基础知识1、计算机基本部件3、内存管理4、操作系统的发展所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复