操作系统
文章平均质量分 83
star _chen
ACM捡漏铜牌选手/C++ ,
PTSD晚期患者/内核,
panic行为艺术家,
曾用三行代码让服务器哭着跑完马拉松,
在亲手写的TCP/IP协议栈里与网卡对骂三昼夜,
现致力于证明【头发数量与代码行数成反比】的哥德巴赫猜想。
绝技:0day花式崩溃分布式系统,人肉gdb比gdb更快定位玄学bug!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【操作系统入门】虚拟内存与页面置换
本文深入探讨了操作系统中的虚拟内存与页面置换技术。虚拟内存通过结合主内存和磁盘存储,为进程提供远大于物理内存的地址空间,实现内存隔离和高效文件映射。核心机制是按需分页,仅在访问时加载页面。当物理内存不足时,系统需选择牺牲页面换出,不同置换算法影响性能。理论最优算法(OPT)不可实现,实际常用近似算法如FIFO、LRU及其改进版本时钟算法。时钟算法通过循环检查引用位平衡开销与效率,改进型还考虑页面修改状态以优化I/O操作。这些技术共同实现了超越物理限制的内存管理"魔法"。原创 2025-11-22 23:16:23 · 488 阅读 · 0 评论 -
【操作系统入门】文件系统
文件系统:数据的持久化存储与管理 文件系统是操作系统中管理持久化数据的核心组件,它将物理磁盘空间组织为逻辑文件和目录结构。本章从基础概念出发,详细介绍了文件系统的核心抽象(文件、目录、路径名和元数据),并通过代码示例展示了文件控制块的结构和系统调用实现。随后深入探讨了三种磁盘空间分配策略:连续分配(简单高效但易产生碎片)、链接分配(通过链表连接数据块)和索引分配(使用多级索引节点)。重点分析了类Unix系统的inode结构及其寻址机制,包括直接指针、间接指针的计算方法。文件系统通过精妙的数据结构和算法,在物原创 2025-11-22 23:16:07 · 498 阅读 · 0 评论 -
【操作系统入门】设备管理与系统安全
设备管理与系统安全——硬件交互与安全防线原创 2025-11-22 23:15:52 · 615 阅读 · 0 评论 -
【操作系统入门】内存管理(一)
操作系统内存管理:分页与分段机制 本文探讨操作系统内存管理的核心机制,重点分析分页与分段技术。内存管理面临的核心挑战是如何高效分配有限物理内存,使多个进程共享资源且各自拥有独立地址空间的假象。文章首先介绍连续内存分配的三种策略(首次适应、最佳适应、最差适应)及其碎片化问题,随后深入讲解分页技术,包括页表结构、多级页表和TLB加速机制。分页通过将内存划分为固定大小的页/帧,配合页表实现虚拟到物理地址的映射,解决了连续分配的外部碎片问题。多级页表和TLB缓存则优化了地址转换性能。这些机制共同构成了现代操作系统高原创 2025-11-21 14:56:10 · 686 阅读 · 0 评论 -
【操作系统入门】死锁
今天,我们将面对并发系统中最令人头疼的问题——死锁,当多个进程陷入相互等待的僵局时,系统就会彻底停滞。< Rₙ < R₁,这是不可能的。, Pₙ〉,对于每个Pᵢ,它需要的资源可以被当前可用资源+所有Pⱼ(j < i)持有的资源满足。这就是死锁在现实世界中的完美写照——每个参与者都在等待别人释放资源,但谁也不愿先行动。由于所有进程都在相互等待,没有一个进程能够继续执行,系统陷入永久阻塞。,且该循环中涉及的资源类都只包含单个实例时,系统处于死锁状态。:如果进程请求资源被拒绝,则释放其当前持有的所有资源。原创 2025-11-21 14:52:29 · 842 阅读 · 0 评论 -
【操作系统入门】进程同步与通信
本文探讨了操作系统中的进程同步与通信问题,重点分析了临界区问题及其解决方案。首先通过银行账户竞态条件的例子说明了并发编程的核心挑战,随后介绍了软件解决方案Peterson算法和硬件原子操作。文章详细讲解了信号量机制及其在生产者-消费者、读者-写者、哲学家进餐等经典同步问题中的应用,强调了互斥、进步和有限等待三个关键要求。通过代码示例展示了如何正确实现进程同步,避免死锁和资源竞争问题。原创 2025-11-21 14:50:20 · 463 阅读 · 0 评论 -
【操作系统入门】进程调度算法
本文系统介绍了操作系统中的进程调度算法,包括基础概念、评估指标和经典算法实现。首先阐述了调度器的层次结构和关键性能指标(CPU利用率、吞吐量、响应时间等)。然后详细分析了先来先服务(FCFS)、最短作业优先(SJF)、轮转调度(RR)等经典算法,通过实例演示了调度过程和性能计算。最后介绍了现代操作系统广泛采用的多级反馈队列(MLFQ)机制及其优势,以及多处理器环境下的调度挑战。全文深入浅出地揭示了操作系统如何高效分配CPU资源这一核心问题。原创 2025-11-21 14:45:04 · 908 阅读 · 0 评论 -
【操作系统入门】进程与线程(一)
本文介绍了操作系统中的进程与线程概念。进程是一个正在执行的程序实例,包含代码、数据和系统资源,由进程控制块(PCB)唯一标识。进程经历新建、就绪、运行、阻塞和终止五种状态。线程作为轻量级进程,是CPU调度的基本单位,共享进程资源但有自己的执行流,解决了进程创建开销大、通信复杂等问题。线程实现有用户级、内核级和混合三种模型,各具优缺点。理解进程与线程的差异是掌握操作系统并发机制的关键基础。原创 2025-11-20 14:30:01 · 697 阅读 · 0 评论 -
【操作系统入门】演进与蓝图
本文概述了操作系统的演进历史和核心架构。操作系统的发展经历了手工操作、单道批处理、多道程序批处理、分时系统等阶段,驱动力始终是更高效地利用硬件资源。现代操作系统分为宏内核和微内核两种架构:宏内核将核心功能集中管理,性能高但稳定性风险大;微内核仅保留核心功能,其他服务独立运行,更可靠但性能开销大。混合内核如Windows和macOS则折中两者优势。理解操作系统的历史和架构有助于把握其设计哲学和技术权衡。原创 2025-11-20 10:42:38 · 820 阅读 · 0 评论 -
【操作系统入门】启程!
本文开启《操作系统完全指南》系列,通过生活化比喻(大管家、交通指挥)解释操作系统(OS)作为"资源管理者"的本质功能:对下管理CPU、内存等硬件资源,对上为用户和应用程序提供统一接口。文章概述了10章学习路线,涵盖进程管理、内存分配、文件系统等核心内容,强调理解OS原理对解决实际技术问题的重要性。后续将从OS发展史开始,逐步深入计算机系统的底层运作机制。原创 2025-11-20 10:15:59 · 303 阅读 · 0 评论 -
彻底弄懂:什么是用户态和内核态?
摘要: 用户态和内核态是操作系统的核心概念。用户态是应用程序运行的低权限环境,无法直接操作硬件;内核态是操作系统内核运行的高权限模式,可直接控制硬件资源。两者通过系统调用进行切换,确保安全、稳定和抽象性。用户态程序需通过系统调用"陷入"内核态完成特权操作,切换过程存在性能开销。这种设计防止程序错误影响系统,并提供统一的硬件访问接口。理解二者区别对掌握计算机工作原理至关重要。原创 2025-08-20 09:54:23 · 762 阅读 · 0 评论
分享