Linux 进程<1>

在了解Linux的进程之前,我先从不同角度去分析

在体系结构(硬件)上,冯诺依曼的计算机体系结构可谓是计算机难以逾越的大山:输入设备,输出设备,存储器,控制器,运算器构成了基本结构。存储器指的是内存,但这种内存在断电的情况下其中数据会丢失,所以设备中也会有另外一种存储数据的设备硬盘。其次设备是连接的,这样的手段是为了达到一种目的,即是实现设备间数据的流动,因为设备之间会进行数据的来回拷贝,而拷贝的整体速度决定了计算机效率的高低。

这些设备的稳定性,效率都不错,并且还十分的便宜,所以计算机才广为流传。在如下这张图中,距离cpu越近的存储单元,其效率越高,但是造价也越贵,单体数据容量越小,反之亦然。体系结构中为什么要存在内存?回答这个问题首先要了解计算机在早年的昂贵是由效率决定的,前面也提及到效率与价格成正比,引入内存,就好比多了一个媒介介绍所,使原先只有cpu介绍所的垄断大大降低。内存可以看作一个非常大的缓存,介于设备与cpu之间,将效率带来的经济问题转化成了软件问题,那么计算机的效率就变成了最终变成了内存效率。这样的好处是在稳定计算机效率的前提下,还降低了计算机的造价。

程序在运行的时候,必须将程序加载到内存中的原因也显而易见是第一计算机的基本结构是冯诺依曼结构,是冯诺依曼老爷子规定的。第二程序有两个去向,一是程序->文件->磁盘->外设->内存->cpu,二是程序-> 指令和数据 ->cpu,因为最终程序都会让其cpu去处理(cpu的处理数据的效率很高),第三是在内设(数据)层面,cpu和内存打交道,在外设层面,各种设备会和内存打交道,这一点也可以看作是第二点的补充。下面是一个形象的例子:

操作系统软件上理解,首先操作系统是一个进行软硬件资源管理的软件。什么叫做管理?管理者要做决策,被管理者要做执行。举个生动的例子:在校园生活中,校长是管理者的身份,辅导员要保证管理决策落地,学生是被管理的人。首先要明确管理者和被管理者不需要见面,因为管理一个人的本质不是通过见面实现,而是通过管理人的数据实现的。进一步的说管理者核心的工作是做决策,根据数据做决策。第二管理者是通过辅导员拿到被管理者的信息的,第三管理者在面对大量的被管理的数据时,就会用到不同的数据结构去将这些数据封装,通过对数据结构的增删查改以实现对信息,人的管理。以上也反映了操作系统的一个重要工作原理:先描述,在组织!(将现实中的具体问题进行计算机级别的建模,转换成计算机能够识别的问题)。

为什么计算机要有操作系统,对上提供一个良好的运行环境,对下管理好软硬件资源,以达到稳定,高效,安全。我们看这张图:

  再来重新理解printf和scanf,如下图:

我们可以同时将多个exe文件加载到内存,操作系统需要管理多个加载到内存重点程序,操作系统通过先描述,再管理的理念实现管理。为什么程序加载到内存,变成进程之后,系统会给每一给弄成形成一个PCB对象?因为便于操作系统对于其进行管理。进程=内核pcb对象+可执行程序。未来,所有对进程的控制和操作都和进程的PCB有关,和进程的可执行程序无关,并且我们可以将PCB放到任何数据结构中以方便管理。 (PCB(操作系统学科的叫法。具体的linux,PCB->task struct))

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

每一次启动进程的pid都会发生变化,因为我的进程使一个全新的进程,一般再linux中,普通进程都有相对应的父进程。ppid(bash)

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只爱喝coke的小鳄鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值