进程和线程详解
创始人
2024-02-09 14:12:52
0

目录

前言:

操作系统定位

并发

并行

并发

进程

描述

PCB

管理

内存管理

进程间通信

线程

小结:


前言:

    当一个程序运行起来时,操作系统要为之分配一些资源,这样的运行起来的程序称之为一个进程。为了有效解决并发编程,多进程会对于系统的开销比较大,由之提出了多线程。

    进程包含线程,一个进程可有多个线程。多个线程是共享一块资源的,这样就可以大量减少系统的开销。

操作系统定位

    应用程序 --> 系统调用 --> 操作系统内核 --> 驱动程序 --> 硬件设备

    注意:系统调用会为应用程序提供api,操作系统的核心功能对上和对下进行管理。

并发

    由于cpu的资源有限,需要把多个进程进行合理的分配。让有限的资源可以执行多个进程。

并行

    微观上同一时刻,两个核心上的进程就是同时执行的。

并发

    微观上同一时刻,一个核心只能运行一个进程,但它对于进程间的切换是足够快的。

进程

    一个运行起来的程序称为一个进程,没运行起来就不算。每个进程都会对应一些资源,进程是重要的“系统资源”,由操作系统负责管理。以组织和描述的方式进行管理。

描述

    使用c语言中的结构体对进程的属性进行描述,每个这样的结构体称为“进程控制块”,简称:PCB。

PCB

1)pid

    进程的身份标识符,不同的进程有不同的pid(唯一的数字)。

2)内存指针

    指向了这个进程使用的内存空间。

3)文件描述符

    硬盘上的文件,等其他资源。

4)进程调度相关属性(这里写一些重要的属性)

   1. 进程的状态

       就绪状态,运行状态,阻塞状态(进程正在其他地方运行)

   2.优先级

       对进程划分优先级,先执行哪个再执行哪个。

   4.上下文

       操作系统再对进程进行切换的时候,记录进程的中间状态。下一次进程执行的时候就可以恢复原来的状态。

   5.记账信息

       操作系统统计每个进程在cpu上占用的时间和执行指令的条数,根据这个来决定下个阶段该如何调度。

管理

    通过一个双向链表对进程管理起来,把每个进程的pcb通过双向链表连接起来(这里不是一个单纯的双向链表)

内存管理

    如果有一个进程对内存的使用越界了,刚好影响到了另一个进程的内存空间,那么就有可能导致两个进程都崩溃。所以提出了虚拟内存的方法。

    针对进程使用的内存空间,进行隔离。代码里也不在使用物理内存,而使用虚拟内存。由操作系统专门的硬件设备负责虚拟内存到物理内存的转换。

 注意:操作系统中硬件设备一旦发现进程1的内存越界,就会反馈一个错误,使其进程崩溃。这样就不会影响其他进程了。

进程间通信

    这样对进程隔离起来,但是进程间需要数据交互。实现的核心思想:对进程间提供一个公共可以访问的空间,基于这个公共空间实现数据交互。

    这里列举一些主流操作系统提供的进程间通信机制:管理,共享内存,文件,网络,信号量,信号。

线程

    进程对于系统资源的开销比较大,因此提出了多线程,共用一个进程的资源。

    一个进程包含多个线程,多线程对一个进程间的资源进行共享(内存,文件描述符表等),这样就节省了资源,但是会引发线程安全问题。

    线程安全,多个线程争取同一块资源,一个进程间某个线程抛异常可能导致整个进程的崩溃。

注意:

   1)每个线程都对应不同的pcb,当pcb被cpu调度时,这个线程就启动了。

   2)操作系统调度时,是以线程为单位的。

   3)一个进程里面的线程,pid,内存指针,文件描述符表都是相同的。

   4)线程之间是同时进行的,我们看起来貌似没有规则。其实在操作系统内核中,是有一定的规律(取决于操作系统调度器策略的实现)。

   5)进程专门负责资源分配,线程接管和调度一切相关内容。

小结:

    这块的内容我们需要理解,这样会加深我们对其的记忆。

相关内容

热门资讯

特朗普签署多项行政令 亵渎美国... 当地时间8月25日,美国总统特朗普签署多项行政令,旨在结束华盛顿特区及全国范围的无现金保释政策,并加...
成都新易盛通信:发布融资与对外... 2025-08-25,成都新易盛通信技术股份有限公司发布公告,公布了其融资与对外担保管理制度。 该制...
北京双杰电气股份有限公司发布对... 2025年8月25日,北京双杰电气股份有限公司发布公告,公布了对外担保管理制度。 该制度旨在规范公司...
超频三股价小幅回落 临时股东大... 截至2025年8月25日收盘,超频三股价报7.62元,较前一交易日下跌0.65%。当日成交量为269...
南通江天化学股份有限公司发布对... 2025年8月25日,南通江天化学股份有限公司发布公告,公布了其对外担保管理制度。 该制度旨在规范公...
重拳打击走私犯罪 海关总署查获... 海关总署负责人今天(25日)介绍,“十四五”以来,海关会同公安等相关部门,滚动开展专项行动,重拳打击...
荣盛石化股价报9.84元 炼化... 荣盛石化股价报9.84元,较前一交易日下跌1.80%。数据显示,该股开盘价为9.88元,最高触及10...
金易通涉102.95万元货款诉... 金融界2025年8月26日消息,金易通科技(北京)股份有限公司作为原告,就与朔州市三阳煤炭销售有限公...