首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Exploring Operating Systems: 69 天深度探索
赛博东哥CyberFD
创建于2024-12-01
订阅专栏
一个关于操作系统概念的旅程,以C语言实现。每天都会专注于一个特定的主题,为您提供理论和实践相结合的编码经验。
等 19 人订阅
共70篇文章
创建于2024-12-01
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
69天探索操作系统-第49天:探索网络文件系统 (NFS)内部 - 模拟RPC和缓存一致性
1. 介绍 网络文件系统(NFS)允许多个客户端通过网络访问共享文件,就像它们存储在本地一样。NFS 广泛用于分布式系统,以在不同机器之间提供无缝的文件共享。提供的代码实现了核心的 NFS 结构,如用
69天探索操作系统-第48天:构建进程调度模拟器
1. 介绍 进程调度是操作系统的基本方面,负责确定哪些进程可以访问CPU以及何时访问。调度器的目标是最大化CPU利用率,确保公平性,并最小化进程的等待时间和周转时间。本文提供的代码实现了一个进程调度模
69天探索操作系统-第47天:构建安全的内核 - 实现访问控制和认证机制
1. 介绍 内核安全机制通过实施访问控制、认证和授权,构成了系统安全的核心。这些机制确保只有经过授权的用户和进程才能访问特定资源,从而保护系统免受未经授权的访问和潜在威胁。内核充当守门人,协调所有访问
69天探索操作系统-第46天:设备驱动程序
1. 介绍 设备驱动程序是内核模块,用于实现硬件设备和操作系统之间的通信。它们充当硬件和操作系统之间的桥梁,使应用程序能够与硬件交互,而无需了解硬件实现的细节。 设备驱动程序中的关键概念 内核模块架构
69天探索操作系统-第45天:文件系统日志记录
文件系统日志记录是一种用于确保文件系统数据一致性和可靠性的技术。它通过在更改提交到主文件系统之前维护一个日志(即日志文件)来实现。这使得系统能够在发生崩溃或断电时,通过重放或撤销日志中记录的交易来快速
69天探索操作系统-第44天:缓存管理内部机制
1.介绍 缓存是小型、快速的内存单元,用于存储频繁访问的数据,从而减少对较慢的主内存的访问需求。有效的缓存管理涉及保持数据一致性、优化缓存访问模式以及最小化缓存未命中。 缓存一致性: 确保系统中的所有
69天探索操作系统-第43天:内存碎片化
当内存被划分为小而分散的块时,就会发生内存碎片化,即使总空闲内存足够,也难以分配较大的内存块。碎片化会显著降低系统性能,导致内存利用率低下。 内存碎片化的关键概念 内部碎片: 由于向上取整到最近的块大
69天探索操作系统-第42天:资源分配图论
1. 介绍 资源分配图(RAG) 是一种图形和数学工具,用于表示系统中资源分配给进程的情况。它们特别有助于检测和预防死锁,死锁发生在进程因等待其他进程持有的资源而被阻塞时。 过程: 在图中表示为圆圈。
69天探索操作系统-第41天:进程同步
1.介绍 进程同步是现代操作系统和并发编程的关键方面。它确保多个进程或线程可以安全地访问共享资源,而不会导致竞争条件、死锁或其他同步问题。高级同步技术超越了基本的锁和信号量,提供更高效和可扩展的解决方
69天探索操作系统-第40天:Linux 内核内存管理
1.介绍 Linux内存管理是一个复杂的子系统,负责处理从物理内存分配到虚拟内存映射的所有事务。它确保用户空间和内核空间操作的高效内存使用。Linux内核使用多种技术,包括页表、内存区域和各种分配器,
69天探索操作系统-第39天:实时操作系统内部结构
1.介绍 实时操作系统(RTOS) 是一种专门为处理需要精确时间和高可靠性的实时应用程序而设计的操作系统。与通用操作系统不同,RTOS确保确定性行为,这意味着它保证任务将在指定的时间框架内完成。这对于
69天探索操作系统-第38天:CPU 调度
高级CPU调度中的关键概念包括多级队列管理、基于优先级的调度、抢占机制和负载平衡。多级队列允许进程被分类到不同的优先级级别,每个级别都有其自己的调度算法。基于优先级的调度确保高优先级任务首先执行,而实
69天探索操作系统-第37天:使用原始套接字进行网络协议处理和报文构造
1.介绍 原始套接字编程是一种底层网络技术,允许开发人员直接与网络协议栈交互。与标准套接字不同,标准套接字抽象了许多网络层的细节,而原始套接字则提供了对数据包头和协议行为的细粒度控制。这使得原始套接字
69天探索操作系统-第36天:共享内存
1.介绍 共享内存是进程间通信(IPC)机制中最快的一种,因为它允许进程直接访问相同的内存区域。这消除了数据复制的需要,使其对于高性能应用来说非常高效。高级共享内存技术涉及底层内存管理、同步和优化策略
69天探索操作系统-第35天:进程间通信 (IPC)
1. 介绍 进程间通信(IPC)是一组允许进程进行通信和同步其操作的机制。IPC是现代操作系统和分布式计算的基础。它使进程能够共享数据、协调任务并高效地管理资源。 关键概念: 进程隔离: 进程拥有独立
69天探索操作系统-第34天:Linux 内核模块开发
1.介绍 可加载内核模块(LKMs)是包含扩展操作系统运行内核代码的对象文件。它们提供了一种在不重新编译内核或重启系统的情况下向内核添加功能的方法。 关键概念 动态加载: 模块可以在运行时加载和卸载,
69天探索操作系统-第33天:高级系统调用机制 - 优化操作系统开发中的性能和安全
1.介绍 系统调用是用户应用程序和操作系统内核之间最基本的桥梁。它们构成了现代操作系统的支柱,为应用程序提供了一种安全且受控的机制,以便请求特权操作。本文深入探讨了系统调用实现的复杂细节,既涉及理论基
69天探索操作系统-第32天:中断处理的艺术
1.介绍 将中断想象成在你全神贯注工作时有一个非常专注的助手。你正处于工作状态,正在编写代码,突然电话响起。你的大脑会自动“中断”你的编码流程来处理这个新输入。这正是计算机处理中断的方式——它们是那些
69天探索操作系统-第31天:磁盘调度算法
1.介绍 磁盘调度算法用于确定磁盘I/O请求的顺序。这些算法在优化磁盘性能和减少访问时间方面起着至关重要的作用。本博文将重点介绍两种流行的磁盘调度算法:SCAN和C-SCAN。 2.理解磁盘调度 磁盘
69天探索操作系统-第30天:I/O系统管理
1.介绍 I/O 系统管理涉及计算机与外部设备之间输入和输出操作的协调和控制。这包括管理数据传输、处理中断和调度I/O请求。了解I/O系统的底层细节对于开发高效和可靠的软件至关重要。 2.理解I/O设
下一页