进程(同步) 线程 超线程 以及上下文等一些相关OS基础

线程与进程

进程是资源共享的最小单位,线程是内存调度的最小单位。

进程:可以理解成一个程序,是占有一定Cpu资源、它是系统进行资源分配和调度的一个独立单位,重点在系统调度和单独的单位,也就是说进程是可以独 立运行的一段程序。比如说,运行Chrome浏览器,那这个浏览器程序,就是一个进程。
线程:一个进程至少有一个线程。线程是CPU的实际调度和分派的基本单位,他是比进程更小的能独立运行的基本单位,线程自己基本上不拥有系统资源。比如说Chrome浏览器,它就有很多的线程,每一个标签就是一个新的线程,这些线程共享占用着进程所占有的系统资源。

两者系统开销:

进程在创建和销毁的时候,系统都要为之分配或者回收资源,如内存空间、i/o设备等。
在进行进程切换的时候,涉及到整个当前进程的CPU环境的保存以及新被调用运行的进程CPU环境的设置。
而线程的切换只需要保存和设置少量寄存器的内容,并不涉及存储器管理方面的操作。
由于同一进程中的多个线程具有相同的地址空间,所以他们之间的同步和通信的实现变得相对容易。

超线程

超线程:假如说我有个单核的CPU,我要是想要运行一个多线程的程序,通常情况下,只能是由Cpu在线程之间来回调度,但是当我开启了超线程,我可以在一个线程执行整数指令集的时候,而恰好在这个时候,另一个线程执行浮点指令集,而这两个指令集分数由整数指令单元和浮点指令单元来执行。那么我就可以同时执行这两个线程,这就叫超线程。而且实际上,是有大量资源被闲置着的。超线程技术允许两个线程同时不冲突地使用CPU中的资源。
指令单元闲置,可以通过超线程的技术来达到提高利用率。这叫做硬件多线程技术。

下面详细介绍一次进程(进程同步)和线程(用户级和内核级线程)相关知识

进程

先简单说一下进程的几种常见状态和转换
在这里插入图片描述

进程同步

进程同步的目的是:对多个相关的进程在执行次序上进行协调,是并发执行的诸个进程之间有效的共享资

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值