冯诺依曼系统及操作系统

目录

一.冯诺依曼体系结构

二.操作系统

三.系统调用和库函数概念


一.冯诺依曼体系结构

我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系

截至目前,我们所认识的计算机,都是由一个个的硬件组件组成

  • 输入单元:包括键盘, 鼠标,扫描仪, 写板等
  • 中央处理器(CPU):含有运算器和控制器等
  • 输出单元:显示器,打印机等

关于冯诺依曼,必须强调几点:

  • 这里的存储器指的是内存
  • 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)
  • 外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取
  • 一句话,所有设备都只能直接和内存打交道

二.操作系统

概念

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

  • 内核(进程管理,内存管理,文件管理,驱动管理)
  • 其他程序(例如函数库,shell程序等等)

设计OS的目的

  • 与硬件交互,管理所有的软硬件资源
  • 为用户程序(应用程序)提供一个良好的执行环境

定位

  • 在整个计算机软硬件架构中,操作系统的定位是:一款纯正的"搞管理"的软件

如何理解"管理"

  • 管理的例子
  • 描述被管理对象
  • 组织被管理对象

总结

计算机管理硬件:

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

三.系统调用和库函数概念

  • 在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分 由操作系统提供的接口,叫做系统调用
  • 系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统 调用进行适度封装,从而形成库,有了库,就很有利于更上层用户或者开发者进行二次开发
相关推荐
喜欢吃燃面4 小时前
Linux:环境变量
linux·开发语言·学习
佑白雪乐7 小时前
<Linux基础第10集>复习前面内容
linux·运维·服务器
春日见7 小时前
自动驾驶规划控制决策知识点扫盲
linux·运维·服务器·人工智能·机器学习·自动驾驶
暮云星影7 小时前
四、linux系统 应用开发:UI开发环境配置概述 (三)
linux·ui·arm
迷途知返-8 小时前
服务器——那些年我踩过的坑
linux
landonVM9 小时前
Linux 上搭建 Web 服务器
linux·服务器·前端
云游云记9 小时前
nesbot/carbon 常用功能总结
linux·运维·服务器
慵懒的猫mi9 小时前
从XDG正式支持如意玲珑(Linyaps)看如意玲珑的发展与架构演进
linux·开源软件·deepin
landonVM9 小时前
Linux 下的高效压缩工具 Zstandard
linux·运维·服务器
EmbedLinX9 小时前
Linux之内存管理
linux·服务器·c语言·c++