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

操作系统:

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

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

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

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

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

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

进程和线程有什么区别

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

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

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

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

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

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

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

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

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

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

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

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

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

l

相关推荐
摇滚侠4 分钟前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 11
java·笔记·python
辣知1 小时前
辣知·化智93 被历史尘封的鬻子
学习
每天题库3 小时前
西藏安全员 A 证备考真题题库 强化重点知识刷题提升通过率
学习·安全·考试·题库·考证
Be for thing3 小时前
PyTorch基础|Tensor张量详解,张量创建、数据类型与常用操作
pytorch·学习·1024程序员节
前进的李工3 小时前
Agent 学习笔记 02:Harness 与工作流怎么理解
笔记·学习·agent·工作流·harness
m4Rk_4 小时前
【论文阅读】Agent记忆机制(114):MemoryTax——当 Agent 能自主搜索历史,专门的记忆系统还划算吗?
论文阅读·人工智能·学习·开源·github
海鸥-w5 小时前
数据库冗余字段设计笔记
java·数据库·笔记·oracle
滴啦嘟啦哒5 小时前
【具身笔记】【原理探究】一、对PI05源码的实践笔记
笔记·python·vla·具身
程序员梅雨6 小时前
【从零开始学习数据仓库 | 第一篇】:维度建模理论
大数据·数据仓库·学习·阿里云·数据分析
keyipatience7 小时前
Git学习(4)Git分布式优势与实战配置全解析
git·学习