Linux 进程概念
创始人
2024-09-25 04:19:43
0

冯诺依曼体系结构


我们常见的计算机,大部分都遵守冯诺依曼体系结构

关于冯诺依曼的注意点

1.这里的存储器指的是内存

2.不考虑缓冲情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)

3.外设(输入或输出设备)要输入或者输出的数据,也只能写入内存或者从内存中读取。

4.综上所述,所有设备都只能直接和内存互动。

硬件部分:

a. 存储器

指的是内存,硬件级别的缓冲空间,在体系中为核心地位。

为什么要加一个存储器?

因为外设和中央处理器的速度代差太大了,如果去掉存储器,输入设备慢悠悠的输入,但是运算器却能非常快的完成计算,运算器运算完后直接交给输出设备,而输出设备却慢悠悠的输出,则CPU就只能等,则势必会拖慢计算机的速度。所以加入了存储器(内存)。

b.输入设备

鼠标,键盘,摄像头,麦克风,磁盘(文件的写入),网卡(信息的接收)等

c.输出设备

显示器,扬声器,磁盘 (文件的保存),网卡(信息的发送)等

d.运算器

对输入的数据进行计算任务(算术运算和逻辑运算);

e.控制器

对我们的计算硬件流程进行一定的控制

运算器+控制器=中央处理器(CPU)

上面这些都是一个个独立的个体,设备和设备之间必须用"线"连接起来,这些"线"分为 1. 系统总线 2. IO总线

存储金字塔

1.距离CPU越远的设备,他所对应的容量会越来越大,效率会越来越低

2.存储是分级的,

软件部分:

一个程序要运行,必须得先加载到内存中运行。为什么?

程序的代码和数据必须由中央处理器运算,而想要中央处理器处理数据,程序必须在内存中运行,因为中央处理器只从运存中读取数据。所以必须把程序从外设记载到内存中。冯诺依曼体系结构规定!

操作系统

操作系统是一款进行管理的软件。

管理的中的为什么,是什么,怎么办。 


 

概念

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

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

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

设计OS的目的 (为什么)

1.与硬件交互,管理所有的软硬件资源,操作系统帮助用户管理好下面的软硬件资源。

2.为用户程序(应用程序)提供一个良好的执行环境。

操作系统通过管理好下面的软硬件资源,为用户提供一个良好的操作环境。

所有访问操作系统的行为,都只能通过系统调用完成。

如何管理好底层的软件资源?(怎么做)

1.管理者和被管理者是不需要见面的

2.管理者在不见被管理者的情况下,如何做好的管理呢?只要能够得到管理信息,就可以在未来进行管理决策。——管理的本质:是通过对数据的管理,达到对人的管理。

3.管理者和被管理者都不见面,如何拿到对应的数据呢?

在操作系统中是先描述再组织的,管理任何对象,最终都可以转化成对某种数据结构的增删查改

定位

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

系统调用和库函数概念

1.在开发角度,操作系统对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分有操作系统提供接口,叫做系统调用。

2.系统调用在使用上,功能比较基础,对用户的要求相对比较高,所以,有些开发者可以对部分系统调用进行适当封装,从而形成了库,有了库就很有利于上层用户或者开发者进行二次开发。

进程


基本概念

一个已经加载到内存中的程序,就叫进程。

正在运行的程序叫做进程。

描述进程-PCB

任何一个进程,在加载到内存的时候,形成真正的进程时,操作系统要先创建描述进程的结构体对象 ——PCB(进程控制块)。描述进程的PCB结构体和该进程对应的代码和数据合起来叫进程PCB是由操作系统自己维护,代码和数据由程序员维护。

进程=内核PCB数据结构对象(描述你这个进程的所有的属性值)+你自己的代码和数据

task_struct

概念

在linux中描述进程的结构体叫做task_struct。

task_struct是linux内核的一种数据结构,他会被装载到RAM里并且包含着进程信息。

内容分类

1.标示符: 描述本进程的唯一标示符,用来区别其他进程。
2.状态: 任务状态,退出代码,退出信号等。
3.优先级: 相对于其他进程的优先级。
4.程序计数器: 程序中即将被执行的下一条指令的地址。
5.内存指针: 包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针
6.上下文数据: 进程执行时处理器的寄存器中的数据[休学例子,要加图CPU,寄存器]。
7.I/O状态信息: 包括显示的I/O请求,分配给进程的I/O设备和被进程使用的文件列表。
8.记账信息: 可能包括处理器时间总和,使用的时钟数总和,时间限制,记账号等。

Linux内核中,最基本的组织进程task_struct的方式,采用双向链表组织。

组织进程

可以在内核源代码里找到它。所有运行在系统里的进程都以task_struct链表的形式存在内核里。


相关内容

热门资讯

玩家必看科普!微信小游戏辅助器... 玩家必看科普!微信小游戏辅助器,德州来玩辅助器,方针教程(有挂攻略)1、微信小游戏辅助器免费脚本咨询...
每日必看推荐!万能微信小游戏辅... 每日必看推荐!万能微信小游戏辅助器,hhpoker德州挂真的有吗,手册教程(确实有挂)1、下载好万能...
科技揭秘!拱趴大菠萝技巧,hh... 科技揭秘!拱趴大菠萝技巧,hhpoker买挂,积累教程(有挂教程)1)拱趴大菠萝技巧有没有挂:进一步...
重大通报!雀神麻雀充运势用吗,... 重大通报!雀神麻雀充运势用吗,德普之星有透视辅助吗,妙计教程(的确有挂)一、雀神麻雀充运势用吗游戏安...
1.9分钟了解!微信微乐辅助i... 1.9分钟了解!微信微乐辅助ios,哈糖大菠萝怎么挂,秘籍教程(的确有挂)进入游戏-大厅左侧-新手福...
科普分享!四川血战到底辅助,哈... 科普分享!四川血战到底辅助,哈糖大菠萝万能挂,积累教程(有挂细节)1、每一步都需要思考,不同水平的挑...
每日必看!情怀国粹麻将开挂,a... 每日必看!情怀国粹麻将开挂,aapoker俱乐部靠谱吗,指南教程(有挂方法)一、情怀国粹麻将开挂游戏...
每日必备!德普之星透视挂,wp... 每日必备!德普之星透视挂,wpk插件辅助,讲义教程(有挂技术)1、完成德普之星透视挂有辅助插件,帮助...
技术分享!wepoker内置辅... 技术分享!wepoker内置辅助器,hhpoker有没有外挂,秘籍教程(有挂助手)该软件可以轻松地帮...
科技揭秘!新超凡辅助app链接... 科技揭秘!新超凡辅助app链接,hardrock作弊,举措教程(有挂方法)1、许多玩家不知道新超凡辅...