[操作系统] 进程与线程

Mamba与iTransformer融合:时间序列预测中的曼巴注意力机制创新实践 本文探讨了Mamba与iTransformer融合在时间序列预测中的创新实践,重点介绍了曼巴注意力机制的设计与优势。通过双路径信息流设计,该方案在保持O(n)复杂度的同时,显著提升了预测精度和训练效率。实验证明,混合架构在电力负荷、气象数据等多变量长序列场景中表现优异,预测误差降低至0.083,内存占用仅4.2GB。 阅读详情

进程与线程



1. 什么是进程:

进程的本质是正在执行的一个程序的实例,包括程序计数器,寄存器,和变量的当前值。与每个进程相关的是进程的地址空间。

在这个地址空间中,进程可以进行读写。该地址空间中存放有可执行程序、程序的数据以及程序的堆栈。与某个进程相关的还有资源集,通常包含寄存器(包含程序计数器和堆栈指针)打开文件的清单、突出的报警、有关进程清单,以及运行该程序所需要的所有其他信息。进程基本上是容纳运行一个程序所需要所有信息的容器。

为了实现并发,一个进程暂时被挂起后,在某个时刻里再次启动时,必须与暂停时的状态完全相同,这就意味着挂起时该进程的所有信息都要保存下来。在许多操作系统中,与一个进程有关的所有信息,除了该进程自身地址空间的内容以外,均存放在操作系统的一张表中,称为进程表。

进程表

所以一个进程包括:进程的地址空间,以及对应的进程表项。需要注意的是,如果一个程序运行了两遍。应该算作两个进程而不是一个。

2. 中断

为了支持进程交替进行,需要中断来实现。与每一个I/O类关联的是一个称作中断向量(interrupt vector)的位置,它包含中断服务程序的入口地址,假设当一个磁盘中断发时,用户进程3正在运行,则中断硬件将程序计数器,程序状态字,有时还有一个或多个寄存器压入堆栈,计算机随即跳转到中断向量所指示的地址。所有的中断都从保存寄存器开始。

3. 什么是线程

线程是进程中负责程序执行的最小执行单元。一个进程中至少有一个线程。传统操作系统中,每个进程有一个地址空间和一个控制线程。经常存在在同一个地址空间中准并行运行多个控制线程的情形,就像分离的进程。

为什么要设计线程?

  1. 在许多应用中同时发生着多种活动,其中某些活动随着时间的推移会被阻塞,通过将这些应用程序分解成可以准并行运行的多个顺序线程,程序设计模型会变得简单。同一个进程的线程共享进程的地址空间,和所有可用数据的能力。进程无法表达,因为它们具有不同的地址空间。(真正的并行有了实现的可能)
  2. 线程比进程更容易(更快)创建和撤销
  3. 多线程允许活动彼此重叠进行,对于存在大量计算和I/O处理的程序会提高执行速度。

4.进程模型基于两种独立的概念:

  1. 资源分组处理:用某种方法把相关的资源集中在一起。进程有存放程序正文和数据以及其他资源的地址空间。包括打开的文件、子进程、即将发生的报警,信号处理程序、账号信息等。
  2. 执行:进程拥有一个执行的线程。在线程中有一个程序计数器,用来记录接着要执行哪一条指令。线程拥有寄存器,用来保存线程当前的工作变量。还拥有一个堆栈,用来记录执行历史,其中每一帧保存了一个已调用的但是还没有从中返回的过程。

进程用于把资源集中在一起,而线程则是CPU上被调度执行的实体。线程试图实现的是,共享一组资源的多个现成的执行能力,以便这些线程可以为完成某一任务而共同工作

5. 线程的独立性

尽管同一个进程中的线程共享一个地址空间,并且合作完成一个任务,但因为每个线程有不同的调用过程。所以需要自己的堆栈。每个线程的堆栈有一帧,供各个被调用但是还没有从中返回的过程使用,在该帧中存放了相应过程的局部变量以及过程调用完成之后使用的返回地址。
进程与线程各自内容

6. 线程可能引发的问题

  1. 无法利用时钟中断强制让出CPU,所以需要调用过程允许线程自动放CPU。
  2. 如果父进程有多个线程,子进程是否需要与父进程相应的线程?答案是肯定的。但如果父进程在read系统调用(比如键盘)上被阻塞了会怎么样?是父进程与子进程的两个线程都被阻塞?还是其中一个被阻塞?在键入一行输入后,两个线程得到输入副本。还是仅有一个进程得到。
  3. 如果一个线程关闭了某个文件,而另一个线程还在进行读操作怎么办?

参考书目:现代操作系统第三版

Python爬虫:抓取专利数据并分析专利趋势 本文展示了如何使用 Python 爬虫技术抓取中国专利数据,并对数据进行了清洗、分析和趋势预测。通过分析专利数据,企业和科研机构可以了解行业的技术发展趋势,进行技术创新战略规划。未来,我们可以进一步扩展爬虫的功能,抓取更多专利数据,增加多维度的数据分析,如技术领域、地域分布等。同时,可以尝试使用深度学习模型(如 LSTM)进行时间序列预测,以获得更准确的专利趋势预测。 阅读详情

相关推荐

163种中草药图像数据集构建与ResNet-50迁移学习实战指南

在计算机视觉领域,高质量标注数据集是模型训练的基石,直接影响图像分类、目标检测等任务的性能。其核心原理在于为算法提供结构化的监督信号,通过深度学习模型学习从像素到语义的映射关系。构建此类数据集的技术价值在于解决了特定垂直领域(如中医药)数据稀缺的痛点,为AI技术落地提供了关键“燃料”。在应用场景上,标准化数据集广泛支撑着教学演示、算法验证和产业应用开发。本文聚焦于中草药识别这一细分领域,详细介绍了一个包含163种常见药材、经过多源聚合与清洗的图像数据集构建全过程,并提供了基于PyTorch和ResNet-5

weixin_33672400的博客 454

操作系统之进程和线程

进程描述 1.1 进程的定义 进程:一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。 1.2 进程的组成 一个进程包括: 程序的代码 程序处理的数据 程序计数器的值,执行下一条将运行的指令 寄存器 系统资源 进程包含了正在运行的一个程序的所有状态信息 进程和程序的关系: 程序是产生进程的基础 程序每次运行构成不同的进程 进程是程序功能的体现 通过多次运行,一个程序可以对应多个进程;通过调用关系,一个进程可包含多个程序 进程和程序的区别: 进程是动态的,程序是静态的:程序是有序代码的集

qq_43767234的博客 446

UE5与Cesium for Unreal结合:打造高效离线地图解决方案

本文详细介绍了如何利用UE5与Cesium for Unreal结合打造高效离线地图解决方案,特别适用于数字孪生、军事仿真等网络不稳定场景。通过优化配置、数据处理和性能调优,实现TB级地形数据的流畅渲染,并结合实战案例展示了在油田巡检等复杂环境中的应用效果。

weixin_29007135的博客 493

操作系统——进程和线程(一文详解进程和线程关系)

操作系统——进程和线程(一文详解进程和线程关系)

xdx_dili的博客 868

基于Python的MGWR多尺度地理加权回归模型

多尺度地理加权回归(MGWR)变量之间的关系在地理空间上不是均一的,所有特征变量的影响都在不同的空间范围(带宽)内变化,某些变量可能表现出局部性影响(小带宽),某些变量可能表现出全局性影响(大带宽),通过优化每个特征变量的带宽,捕捉到空间关系的多尺度特性,得到更细致的模型解释。

weixin_61965078的博客 3851

Unity海洋渲染实战:Ceto Ocean System核心原理与高级应用指南

实时水面渲染是计算机图形学中的重要课题,涉及波浪模拟、光照交互和着色器编程等核心技术。其原理通常基于物理模型,如使用Gerstner波模拟规则海浪,或通过快速傅里叶变换(FFT)处理频谱数据生成随机海面。这些技术的价值在于能以可控的性能开销,在游戏中实现具有体积感、反射和折射效果的真实水体。在开放世界、海战模拟等应用场景中,专业的海洋系统如Ceto Ocean System,通过模块化架构整合了波浪生成、动态网格和渲染管线,为开发者提供了完整的解决方案。本文深入探讨了其双引擎波浪系统和多层渲染结构,并分享了

weixin_29002595的博客 279

操作系统之进程与线程

进程定义支持多进程的多道程序系统进程模型进程的创建系统初始化系统调用创建用户请求创建批处理创建进程的终止进程的层次结构进程的状态进程的实现。

qq_62469441的博客 1244

Unity URP项目里Post Processing死活没效果?别慌,这5个坑我帮你踩过了

本文详细解析了Unity URP项目中Post Processing效果失效的五大常见问题,包括渲染管线配置冲突、Volume作用域误判、摄像机参数漏配、Layer层级冲突和Profile引用异常。通过实际项目案例和代码示例,提供专业级解决方案,帮助开发者快速排查并修复后处理效果不生效的问题。

weixin_33721427的博客 333

理解操作系统之进程和线程

在操作系统中,设定了进程和线程的概念去描述程序并发执行逻辑。本文属于研究进程和线程的入门级文章。 主要从以下五个方面介绍进程以及线程的相关概念。 进程和线程的定义 操作系统中对进程和线程的描述 进程的多层调度 进程/线程之间的同步机制 进程/线程之间的通信机制 如何避免进程和线程之间的死锁 一丶进程和线程的定义 进程: 进程是操作系统中定义拥有资源和调度基本单位 线程: 线程是操作系统中调度...

weixin_34119545的博客 289

【同等学力】01-逻辑符号表达

F(x): x是确诊者,G(x):x有症状F(x): x是老人,G(x):x是宠物,L(x,y): x喜欢y。

super_mochi1 1880

AI自瞄原理剖析(一)屏幕内容循环截取及代码实现

尽管Yolo框架在推理时其实是可以输入不同大小的图片的,但这些作者大多不会去处理图像尺寸的改变,所以目前大部分开源源码主要是以输入320或者640尺寸的图像为主。只要截图的效率足够快,能够满足一秒采集60张图片,也就是稳定的截图速度达到60帧以上,那么就可以实现内存级别的AI锁死自瞄效果。这里强调了截图速度对于最终实现特定自瞄效果的重要性,只有达到这样的速度标准,才能让整个自瞄相关的功能在内存层面有效地运作起来。在实现自瞄功能的情境下,只需要以游戏准星为中心向外的正方形区域图像就够了,没必要进行全屏截取。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1095

操作系统之二:进程与线程

在我们的计算机发展中,自从引入多道程序技术之后,我们的计算机可以并发的执行多个程序。既然内存中同时放入了多道程序,并且各个程序的代码、运算数据存放的位置不同,那么我们的操作系统要怎样才能找到各程序的存放位置?我们在运行过程中,每个正在运行的程序当前被分配了哪些系统资源,这些信息也是需要记录下来的,这样才可以方便操作系统管理,因此引入了进程和进程实体的概念。为了方便操作系统管理,完成各程序并发执行,引入了进程、进程实体概念。PCB、程序段、数据段三部分构成了进程实体(进程映像)。

喜欢喝椰奶的博客 879

华为OD机试真题 新系统【优化充电桩调度算法】

华为OD机试 新系统真题【优化充电桩调度算法】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【优化充电桩调度算法】

qq_45776114的博客 753

操作系统进程线程题库

网络课课后题 1、多道程序设计技术是操作系统中最早引入的软件技术,引入它的目的是 A、提高系统的实时响应速度 B、充分利用内存,有利于数据共享 C、充分利用CPU,提高CPU利用率 D、提高文件系统性能,减少内外存之间的信息传输量 解析: 2、下列关于进程控制块PCB的叙述中,哪一个是错误的? A、操作系统利用PCB描述进程的基本特征 B、一个PCB唯一对应一个进程 ...

闲狗的博客 5743

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【操作系统·考研】进程与线程

进程是现代操作系统中实现并发执行和资源共享的基本单位,它由程序段、相关数据段以及进程控制块(PCB)组成,动态地经历创建、运行、就绪、阻塞和终止等状态。PCB作为进程存在的唯一标志,记录了进程的状态信息、资源分配情况及处理机上下文。进程间通过进程控制进行创建、阻塞、唤醒和终止操作,并通过共享存储、消息传递或管道等方式进行通信。线程是进程中更轻量级的实体,拥有独立的执行流但共享进程资源,也是处理机调度的基本单位,其状态转换与进程相似。在多线程模型中,有用户级线程(ULT)、内核级线程(KLT)以及组合方式..

qq_34920731的博客 2580

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

《操作系统》——进程与线程

进程与线程的基本介绍

m0_56069910的博客 2393

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

计算机操作系统之进程与线程

本篇文章将介绍计算机操作系统的相关内容,主要内容有进程,进程调度,并行与并发的概念,进程间通信,进程与线程的区别。

未见花闻的博客 2364

【操作系统】进程与线程

进程是正在运行的程序的实例,它是操作系统进行资源分配和调度的基本单位。例如,当你在电脑上打开一个文字处理软件,操作系统就会为这个软件创建一个进程,该进程会占用一定的内存空间、使用 CPU 时间片等系统资源,以保证这个文字处理软件能够正常运行。线程是进程中的执行单元,是 CPU 调度和分派的基本单位。一个进程可以包含多个线程,这些线程共享进程的资源(如内存空间、文件描述符等),同时每个线程又有自己独立的运行上下文(如程序计数器、寄存器组等),可以独立地执行任务。

Guiat的博客 1328

操作系统-进程与线程

操作系统用来保护系统资源和提高稳定性的重要机制。

LDM的博客 928

操作系统之线程和进程

操作系统相关内容, 进程和线程, 并发和并行.

trong_ 的烂笔头 2567

【操作系统】进程、线程、作业

多道程序设计,单道程序设计的缺点,多道程序设计的提出,多道程序设计的问题,进程,进程状态及状态转换,进程控制块(PCB),进程的组成与上下文,进程的队列,进程的类型与特征,进程间相互作用,进程的创建与撤销,进程与程序间的联系,轻进程,线程,作业

m0_74195626的博客 1144

操作系统——进程与线程(1)

进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。进程控制块(PCB)、程序段、数据段。线程是进程中的一个实体,是被系续独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其他线程共享进程所拥有的全部资源。执行态、就绪态、阻塞态。

Smooth的博客 1073

操作系统---进程与线程简述

进程控制的主要功能是对系统中所有的进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。简单说,进程控制就是要实现进程状态的转换进程通信就是指进程之间的信息交换进程是分配系统资源的单位(包括内存地址空间),因此各进程拥有的内存地址空间相互独立。为了保证安全,一个进程不能直接访问另一个进程的地址空间但是进程之间的信息交换又是必须实现的。

2401_84420653的博客 1551

【王道操作系统】ch2进程与线程-01进程与线程(长文预警)

定义:进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。通俗理解:进程控制就是要实现进程的状态转换。进程的运行环境也叫“进程上下文(Context)”,一个进程下CPU时会将其需要的运行环境存入PCB中,而当一个进程需要重新回到CPU运行时,就可以从PCB中恢复它的运行环境,让它继续往下执行。进程间通信(Inter-Process Communication,IPC)是指两个进程之间产生数据交互。特征管道通信共享存储通信方式。

verse_armour的博客 1144

线程进程傻傻分不清?一文带你了解线程与进程的区别与联系| 操作系统| 进程| 线程

在操作系统中,进程和线程是两个重要的概念。它们都用于描述程序的执行过程,但它们之间也存在一些区别。本文将详细介绍线程和进程的概念,以及它们之间的区别和联系。线程和进程是操作系统中重要的概念,它们都用于描述程序的执行过程。线程是进程内部的最小执行单元,它可以共享进程的资源,并且可以同时执行。进程是操作系统中最小的资源分配单位,它拥有自己的地址空间、文件句柄等资源。进程和线程之间存在着密切的联系,一个进程可以包含多个线程,这些线程可以相互协作,共同完成一个任务。

2301_77611317的博客 1023

操作系统 - 进程与线程的区别[超详解]

线程就是我们所谓的"跑起来的程序",那什么是可以跑起来的程序呢?就是类似我们在桌面上创建的对应软件的快捷方式,右击软件点击打开文件所在位置我们就可以看到xxx.exe文件,这样exe的文件我们统称为可执行文件当我们不想启动软件时,这些文件就会静静的"呆在"硬盘上,在我们双击之前是不会对系统有任何影响.

积跬步以至千里 1549
上一篇: [软件工程] GRASP设计模式
下一篇: [操作系统] 实现线程包的方式
LLLZHLIU
博客等级 码龄10年 19粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值