冯·诺伊曼体系结构--操作系统

文章目录

1.认识冯诺依曼系统

1.1约翰·冯·诺依曼

1.2冯·诺依曼结构

  1. 存储器:内存
  2. 输入设备: 键盘,摄像头,话筒,磁盘,网卡...[产生数据]
  3. 输出设备: 显示器,音响,磁盘,网卡...[保存/输出数据]
  4. CPU:
    运算器: 算术运算,逻辑运算
    控制器: CPU可以响应外部事件 协调外部就绪事件 比如: 拷贝数据到内存

1.3存储器的读写速度

CPU/Cache/寄存器 > [RAM > ROM]/硬盘/U盘 > 磁盘/SSD > 光盘 > 磁带

  1. Cache是CPU的缓存,和CPU速度一致,用于平衡CPU和内存的速度差,是速度最快的
  2. 寄存器
  3. RAM
  4. ROM(固态硬盘比机械硬盘快很多)

1.4对冯·诺依曼结构的认识

存储器: 即内存/主存(RAM+ROM) 存在的意义:

  1. 缓解CPU的压力
  2. CPU可以读取内存的数据(数据+代码) 而不直接访问外设
  3. 价格昂贵 不宜太大

体系结构:

通过CPU和存储器之间的关系 达到效率上的提高 体系的相对平衡 当然如果你足够有实力 你搞一个几T的内存的电脑自己使用也不是不可以

CPU读取/处理数据

  1. 将外设中的数据加载到内存
  2. 从内存中读取

数据的角度

  1. CPU不和外设交互
  2. 外设之和内存交互
  3. 实际上 CPU是会和外设打交道的

如何理解程序?

程序(是一个文件 存在于磁盘)要运行 必须先加载到内存 <=== 冯诺依曼体系结构决定

1.5冯·诺依曼结构在生活中的演示

2.操作系统--"搞管理"的软件

2.1概念

任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)

包括:

1.内核(进程管理,内存管理,文件管理,驱动管理)

  1. 其他程序(函数库,shell程序等)

2.2OS存在的意义

  1. 与硬件交互,管理所有的软硬件资源
  2. 为用户程序(应用程序)提供一个良好,稳定,安全,简单的执行环境

2.3管理的方式

  1. 描述起来,用struct结构体
  2. 组织起来,用链表或其他高效的数据结构

2.4系统调用和库函数概念

  1. 在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分
    由操作系统提供的接口,叫做系统调用。
  2. 系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统
    调用进行适度封装,从而形成库,有了库,就很有利于更上层用户或者开发者进行二次开发
  3. linux是c语言写的 那么在linux-os下 system call实际上就是C语言的库函数
相关推荐
春日见41 分钟前
眼在手上外参标定保姆级教学---离线手眼标定(vscode + opencv)
linux·运维·开发语言·人工智能·数码相机·计算机视觉·matlab
java小吕布2 小时前
CentOS 7 服务器性能监控实战指南
linux·服务器·centos
椰子今天很可爱2 小时前
仿照muduo库实现一个高并发服务器
linux·服务器·c++
yesyesyoucan2 小时前
安全工具集:一站式密码生成、文件加密与二维码生成解决方案
服务器·mysql·安全
小豆子范德萨2 小时前
cursor连接远程window服务器的WSL-ubuntu
运维·服务器·ubuntu
Xの哲學8 小时前
Linux grep命令:文本搜索的艺术与科学
linux·服务器·算法·架构·边缘计算
夜月yeyue9 小时前
Linux 调度类(sched_class)
linux·运维·c语言·单片机·性能优化
林义满9 小时前
运维转型让产线 “少掉链”:上海义满汽车零部件借智能运维降本增效,年减损失超 200 万
运维·汽车
VekiSon9 小时前
Linux系统编程——IPC进程间通信:信号通信与共享内存
linux·运维·服务器
南山nash10 小时前
CentOs7 安装 Docker 详细步骤
linux·运维·docker·容器