学习笔记—八股—操作系统

操作系统:

操作系统中的进程有哪几种状态

操作系统中的进程的基础状态也5种:新建,就绪,运行,阻塞,终止

什么是僵尸进程?他有什么危害

僵尸进程就是已经终止但父进程没有调用wait函数读取其退出状态的进程,他不占用CPU或内存资源,但仍然保留PCB和PID,导致系统资源表项浪费,大量存在会影响新的进程创建。

什么是孤儿进程?系统如何处理它?

孤儿进程就是父进程提前终止后仍然运行的子进程。Linux系统会将其收养给init进程,由init进程负责监控调用wait清除其退出状态,防止变成僵尸进程。

进程和线程有什么区别

进程是操作系统分配资源的最小单位,拥有独立的内存空间,线程是CPU调度最小的单位,属于进程,共享进程资源,但有自己独立的栈和寄存器

线程之间如何通讯?需要注意什么

线程间可以直接读写共享变量进行通讯,因为他们是共享堆内内存和全局数据。注意同步问题,比如使用互斥锁就是防止多个线程同时访问临界资源,避免竞态条件。

进程之间如何通讯?常见的方法有那些

由于进程内存隔离,必须通过专业的进程间通讯机制,如管道,命名管道,消息队列,信号量,共享内存,套接字等,其中共享内存效率最高,但需要配合同步机制使用

什么是线程池?为什么要使用线程池?

线程池是一组预先创建并等待任务的线程集合。他可以避免频繁创建和销毁线程带来的性能开销,提高响应速度和资源利用率,适合高并发场景如web服务器处理请求

什么是用户态和内核态?主要区别有那些?

用户态和内核态是操作系统中的两种运行模式,用户态是应用程序运行的模式,权限低不能直接访问硬件或执行特权指令,不许通过系统调用请求内核代为操作,内核态是操作系统内核运行的模式,具有最高权限,可以直接访问所有硬件资源和内存,负责管理系统的核心功能。权限,访问资源,稳定性,用户态程序崩溃只能影响单个程序,内核态崩溃会导致整个系统宕机。

什么是管道?他适合用于那些场景?

管道是一种单向通讯机制,用于具有亲缘关系的进程之间传递信号。它分为匿名进城和命名进程;匿名进程只能用于有亲属关系的进程间通讯,而命名管道则通过文件系统的一个特殊文件路径实现无亲属关系进程间通讯。

信号量的作用是什么?它如何实现进程同步?

信号量是一种用于控制对共享资源访问的同步原语。通过P操作和V操作可以管理资源使用状态,防止多个进程同时访问临界资源区,常用于实现互斥和进程的协调同步。

l

相关推荐
aaaameliaaa4 分钟前
结构体 结构体
c语言·笔记·算法
李白客36 分钟前
数据库培训怎么选?零基础到DBA的学习路线与机构认证对比(2026)
数据库·学习
留白_1 小时前
代运营面试问答
学习
是隼人1 小时前
buuctf-pwn PWN8题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
有Li1 小时前
【AI答疑】MR数据预处理步骤
人工智能·笔记·算法·语言模型·医学生
江湖人称菠萝包2 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter3-Qt类库概述
笔记·qt·qt5
ps酷教程2 小时前
数据权限DataPersmission
java·学习
无敌贵点大王2 小时前
RTThread学习记录10——C语言实现面向对象的编程
c语言·stm32·学习·链表
江屿风2 小时前
【Linux系统】【Linux进程终止等待详解与程序替换机制初体验】流食般投喂
linux·运维·笔记·系统架构·centos·unix
程序员yu3 小时前
数智码力:Python作用域完全梳理,全局变量局部变量不再混乱
开发语言·python·学习