• 【Linux】系统进程的概念


    一、冯诺依曼体系结构

             

             我们常见的计算机比如常见的笔记本,服务器大部分遵循冯诺依曼体系结构。

             电脑由一个个硬件组成,硬件接受到的数据传入给存储器,存储器交给CPU进行计算,计算后的结果返回给存储器,然后再由存储器把数据传给输出设备。

    输入设备:键盘,摄像头,话筒,磁盘,网卡...

    输出设备:显示器,音响,磁盘,网卡...

    存储器:内存。

    CPU:运算器进行算术运算、逻辑运算。

            那么这里就问题来了,为什么不直接让CPU与输入输出设备进行交互,要在中间加一个内存呢?

            首先我们要知道每个硬件对数据的反应速度是不同的,由高到低为 CPU && 寄存器 > 内存 > 磁盘/SSD > 光盘 > 磁盘

            然后要知道木桶效应,一个桶能装多少水,不是由最长的一块板来决定的,是根据最短的一块板来决定的。

           CPU运算速度快,外部设备的速度慢,一边接受数据,一边计算,这样会照成整体效率变低,加一个内存,把接受到的数据到一定程度后再送给CPU计算然后返回,能有效的提高效率。且这种结构效率高,成本低。

    PS:

    1.CPU读取数据(数据+代码),都是要从内存中读取。站在数据的角度,我们认为CPU不和外设直接打交道。

    2.CPU要处理数据,需要先将外设中的数据,加载到内存。站在数据的角度,外设直接和内存打交道。

            这里我们就知道了程序要运行,就必须加载到内存中,这是其体系结构决定的。

    二、操作系统

            操作系统很复杂,是单一的一门学科,学习C++编写程序,暂时不用了解太深,但是要注意我们自己写的程序也都是操作系统在管理。

            操作系统本质其实就是一个对软硬件资源做管理的软件

            操作系统是分层次的,平时我们用户使用操作系统的时候,使用的是操作系统专门给外部调用的接口,而内部很多核心的东西是自己再进行管理,不会让用户接触。

            这是为了用户提供一个稳定,安全,简单的执行环境。

    那么操作系统如何管理数据呢?

          1.先描述 ( 使用struct结构体 )

          2.再组织 ( 使用数据结构排序结构体 )        

    PS:这里使用的是struc来描述数据,而不是class,因为Linux或Windows其大多数核心内容是C语言加汇编写的。

    三、进程 

    <
  • 相关阅读:
    java计算机毕业设计网上花店源码+系统+数据库+lw文档+mybatis+运行部署
    音频基础知识和音频指标
    Spring MVC @Controller和@RequestMapping注解
    CentOS7命令
    独立站推广引流诀窍
    C++设计模式_创建型模式_工厂方法模式
    Lanbda表达式
    ElasticSearch - 分布式搜索引擎底层实现——倒排索引
    ThreadLocal线程变量使用浅解
    【稳定性】浅谈11.11大促之预案演练 | 京东物流技术团队
  • 原文地址:https://blog.csdn.net/weixin_45423515/article/details/126808641