考点介绍:
现在面试操作系统问的越来越多了,几乎是每个人都会遇到的面试问题,今天就来说一下进程和线程。最常考察的是进程和线程的概念、区别以及应用,包括两者的优缺点。
本期分享的操作系统考点之进程&线程,分为试题、文章以及视频三部分。
答案详情解析和文章内容可扫下方二维码或链接即可查看!
一、考点题目
1.什么是进程?什么是线程?
正确答案:进程概念:
进程是表示资源分配的基本单位,又是调度运行的基本单位。
例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括各种表格、内存空间、磁盘空间、I/O设备等。然后,把该进程放人进程的就绪队列。进程调度程序选中它,为它分配CPU以及其它有关资源,该进程才真正运行。
所以,进程是系统中的并发执行的单位。在Mac、Windows NT等采用微内核结构的操作系统中,进程的功能发生了变化:它只是资源分配的单位,而不再是调度运行的单位。在微内核系统中,真正调度运行的基本单位是线程。因此,实现并发功能的单位是线程。
2.什么时候用多线程?什么时候用多进程?
正确答案:1)需要频繁创建销毁的优先用线程原因请看上面的对比。这种原则最常见的应用就是Web服务器了,来一个连接建立一个线程,断了就销毁线程,要是用进程,创建和销毁的代价是很难承受的
2)需要进行大量计算的优先使用线程所谓大量计算,当然就是要耗费很多CPU,切换频繁了,这种情况下线程是最合适的。这种原则最常见的是图像处理、算法处理。
3.进程和线程的区别?
正确答案:
1、功能不同
进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。
2、工作原理不同
在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程,如Win32线程;由用户进程自行调度的用户线程,如Linux平台的POSIX Thread;或者由内核与用户进程,如Windows 7的线程,进行混合调度。
(扫下方海报二维码查看完整版答案)
二、考点文章
1.终于有人把进程与线程讲清楚了
**CPU **大家都知道是计算机的中央运算单元,用来计算的。
CPU从内存里面读取一条一条的代码指令,然后根据指令来执行运算(加,减,乘,除,复制数据等)。
CPU在运算的过程中一些数据存放在CPU的寄存器和内存里面。
CPU里面有各种寄存器,各司其职。指令指针寄存器存放的是当前执行到那条代码指令了。代码指令是写完程序后被编译器编译成二进制指令代码
2.干货 | 进程、线程、协程 10 张图讲明白了!
我准备用图解的形式带你学习和掌握进程、线程、协程。文字力求简单明了,对于复杂概念做到一个概念一张图解,在操作系统课程的学习中,很多人对进程线程有大体的认识,但操作系统教材更偏向于理论叙述,本文会结合 Linux 系统实现分析,更加印象深刻。
(扫下方海报二维码查看完整版)
三、考点视频
更多资讯可搜索校招VIP小程序查看哦。
PC端链接:https://xiaozhao.vip/dTopic/detail/420
移动端链接:https://m.xiaozhao.vip/dTopic/detail/420