我是靠谱客的博主 动听招牌,最近开发中收集的这篇文章主要介绍【Linux】——操作系统基础知识1、计算机基本部件3、内存管理4、操作系统的发展,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、计算机基本部件

1.1五大部件

基于冯诺伊曼体系,将计算机分为5大组成部分:

  1. 运算器:也叫算数逻辑单元,完成对数据的各种常规运算,如加减乘除,也包括逻辑运算,移位,比较等。要注意PC机32位或64位表示的是运算器计算能力,ALU的宽度,一次计算能够计算的数据的位数。
  2. 控制器:它是整个计算机系统的控制中心,它指挥计算机各部分协调工作,保证计算机按照预先规定的目标和步骤有条不紊地进行操作及处理。
  3. 存储器:存储程序和各种数据。
  4. 输入设备:把人所熟悉地信息,如,图片,声音,文字,转换为计算机能够识别地信息存储起来。
  5. 输出设备:把计算机能识别地信息转换为人能识别地信息,及逆行呈现。

CPU包含控制器和运算器,内存就是存储器,I/O设备就是输入设备和输出设备,如键盘,显示器,鼠标等。在计算机中通过总线将这些部件连接,如下图:
在这里插入图片描述

1.2总线

总线主要分为3类:
6. 数据总线:用来在各个功能部件中间传递数据,是双向传输总线。
7. 地址总线:用来指出数据总线上的源数据或目的数据在主存单元的地址或I/O设备的地址,寻址能力和总线根数有关。
8. 控制总线:由于各个连接在数据总线和地址总线的部件都是共享这两类总线的,那么在某一时刻谁来使用,就是控制总线负责完成的,即控制传输方向。

1.3存储器

我们常用的存储器可以分为以下几种:
在这里插入图片描述
寄存器,缓存,主存是临时存储,即计算机断电或关机数据就会消失,而后面的几个是永久性存储。

1.4指令

  1. 指令:是只是计算机执行某种操作的命令,一条指令通常由两部分构成,地址码,操作码。
  2. 程序:由一条条的指令构成。
  3. 指令周期:cpu每取出并执行一条指令所需的全部时间称为指令周期。
  4. 指令系统:计算机能够执行的全部指令的集合称为该计算机的指令系统。
  5. RISC:精简指令系统计算机,如单片机。
  6. CISC:复杂指令系统计算机,如PC机。
  7. 程序和指令:高级语言写出程序,编译器翻译为汇编助记符,机器指令,让计算机执行的二进制。

1.5并行 && 并发

  1. 并行:两个进程一起运行。并行需要硬件支持,多个CPU。
  2. 并发:两个进程根据时间片轮询运行,因为时间短,故给人的感觉就是一起运行。并发效率慢,但一个CPU即可。
    在这里插入图片描述

3、内存管理

3.1分页

  1. 操作系统将内存划分为大小相等的4k的块,称为页帧,会对页帧进行编号。

  2. 程序在磁盘上存储,把磁盘分为4k大小的块,称为页,每一个页会记录页对应的权限。

  3. 如果运行一个程序,操作系统将程序的页加载到内存的页帧上。操作系统会为每一个进程维护一个页表,页表中存储的是进程的页到内存的页帧的映射
    在这里插入图片描述

  4. 物理地址:真实的物理内存上的偏移地址。逻辑地址:在程序上的偏移地址
    【举个栗子】a:在 2号页上,偏移 128字节。访问a时,需要转换为物理地址:先根据页表将2号映射为17号页帧,偏移128,那么我们转为实际物理地址:17*4k+128,这才是a在内存上存储的真正地址。

  5. 在程序中直接访问的是逻辑地址,在CPU访问逻辑地址时,需要通过地址映射到其物理地址,才能访问此地址上的数据或指令。
    【举个栗子】printf(“&a=%x”,&a)为a的逻辑地址;所以如果在两个进程中打印的变量的地址相等,并不能证明这两个变量是同一个变量,因为加载的物理内存不一样,所以不一定。

3.2虚拟内存

  1. 他将主存看成是一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,使得能够运行比内存大得多的进程
  2. 他为每一个进程提供了一致的地址空间,从而简化了存储管理
  3. 保护每个进程的地址空间而不被其他进程破坏
  4. 交换分区:在磁盘上开辟一块空间,以内存管理方式来管理,作为对内存的补充,一个内存的所有页不一定非得在内存上存储,这就用到页面置换算法,将内存上的页和交换分区的页置换。

4、操作系统的发展

操作系统:管理计算机上的软硬件资源,为用户提供一个交互的接口。

  1. 串行处理:程序一个一个按顺序提交处理
  2. 批处理:一次提交多个程序,最后给一个处理,减少交互。其中过程还是串行
  3. 多道程序设计:一次提交多个程序,多个同时执行,和并行类似
  4. 分时系统:类似并发,提交多个,轮询处理。

最后

以上就是动听招牌为你收集整理的【Linux】——操作系统基础知识1、计算机基本部件3、内存管理4、操作系统的发展的全部内容,希望文章能够帮你解决【Linux】——操作系统基础知识1、计算机基本部件3、内存管理4、操作系统的发展所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部