前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Linux】从软硬件角度重新理解 [ 操作系统与冯诺依曼体系 ](8)

【Linux】从软硬件角度重新理解 [ 操作系统与冯诺依曼体系 ](8)

作者头像
YY的秘密代码小屋
发布2024-01-22 20:55:52
1390
发布2024-01-22 20:55:52
举报
文章被收录于专栏:C++系列

前言 大家好吖,欢迎来到 YY 滴 Linux系列 ,热烈欢迎! 本章主要内容面向接触过Linux的老铁,从软硬件层面向大家介绍操作系统与冯诺依曼体系, 主要内容含:

在这里插入图片描述
在这里插入图片描述

一.冯诺依曼体系(硬件层面)

1.CPU与输入输出设备

在这里插入图片描述
在这里插入图片描述

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

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

中央处理器(cpu)又分成运算器与控制器

  • 运算器:对我们的数据进行计算任务(算数运算,逻辑运算)
  • 控制器:对我们的计算硬件流程进行一定的控制

各个硬件之间都是独立的个体!因此必须用“线”连接起来,分为系统总线与IO总线;

  • 系统总线:CPU与内存之间交互的线
  • IO总线:内存与输入输出设备之间交互的线

2.存储器

在这里插入图片描述
在这里插入图片描述

这里的存储器指的是【内存】,一句话总结此模块的要点

  • 所有设备都只能直接和内存打交道 【不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)】 【外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取】
  • 有时,我们进行工作时,默认显示的数据有时候会缓存起来,并未直接在屏幕上显现;用冯诺依曼体系解释就是数据就是先到存储器中的【内存】,还未直接交给输出设备
  • 因此,当我们面对一个问题“一个程序要运行,为什么必须先加载到内存中运行?”,我们可以直接回答:因为冯诺依曼体系规定;

3.存储的分级

引入:手机中常说的“内存不足”其实指的是硬盘空间不足;用存储是分级的现象来解释,且看如图所示金字塔

在这里插入图片描述
在这里插入图片描述

即,硬盘/磁盘空间不足才是正确说法;

二.操作系统(软件层面)

1.操作系统概述

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

  • 内核(进程管理,内存管理,文件管理,驱动管理)
  • 其他程序(例如函数库,shell程序等等)
在这里插入图片描述
在这里插入图片描述

操作系统的作用主要有以下两点:(用户层这里主要指程序员)

  • 通过帮助用户管理好软硬件资源【承上启下,实现交互;程序员通过操作系统来访问底层的硬件】
  • 从而给用户提供一个良好(稳定,高效,安全)的运行环境
在这里插入图片描述
在这里插入图片描述

2.系统调用

引入:操作系统内部会有各种各样的数据,可是操作系统不相信任何用户, 于是其会将自己封装起来,并通过“提供接口”的方式给用户(程序员)提供调用的入口来获取操作系统内部的数据;

  • 所有访问操作系统的行为,都只能通过系统调用完成!
  • 系统调用:是操作系统提供的,用C语言实现的,自己内部的函数调用;
  • 系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统 调用进行适度封装,从而形成库(lib),有了库,就很有利于更上层用户或者开发者进行二次开发。
在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-12-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.冯诺依曼体系(硬件层面)
    • 1.CPU与输入输出设备
      • 2.存储器
        • 3.存储的分级
        • 二.操作系统(软件层面)
          • 1.操作系统概述
            • 2.系统调用
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档