操作系统 关于操作系统:从零开始写-OS-内核-GDT-与保护模式 系列目录序篇筹备工作BIOS 启动到实模式GDT 与保护模式加载并进入 Kernel显示与打印GDT 和 IDT,中断解决关上虚拟内存实现堆和 malloc创立第一个内核线程多线程运行与切换锁与多线程同步过程的实现进入用户态一个简略的文件系统加载可执行程序零碎调用的实现键盘驱动运行 shell从 mbr 到 loader接上一篇 BIOS 启动到实模…
操作系统 关于操作系统:聊聊磁盘-IO 常见的磁盘类型按存储原理的不同,能够把磁盘分为这么几种HDD 盘:没啥说的,就是平时最常见的机械盘。SSD 盘:用电信号来记录存储数据,而不是磁片。显然进行 I/O 时,这要比机械盘的物理寻址形式快的多。HHD 盘:HDD + SSD 的组合模式。掂量磁盘性能的指标有哪些?有时咱们发现运行在 Linux 服务器上的某个利用响应很…
操作系统 关于操作系统:从零开始写-OS-内核-BIOS-开始启动到实模式 系列目录序篇筹备工作BIOS 开始启动到实模式进入保护模式加载并进入内核显示与打印GDT 和 IDT,中断解决关上虚拟内存实现堆和 malloc创立第一个内核线程多线程运行与切换锁与多线程同步过程的实现进入用户态一个简略的文件系统加载可执行程序零碎调用的实现键盘驱动运行 shell实现 Boot Loader从这篇开始咱们将进入 boot…
操作系统 关于操作系统:Clickhouse-系列-番外-零拷贝 本文将向读者具体阐明第三章中提到的无序存储时,每次读取须要读取 4k 的底层细节。第三章的附录已将向读者阐明了 “这个起因是因为操作系统在读取磁盘时,根据数据局部性原理,会依照页为单位读取,每页的大小默认是 4k。“本番外将向读者由此深刻到一个计算机领域罕用的一个优化——零拷贝技术。
操作系统 关于操作系统:从零开始写-OS-内核-准备工作 系列目录筹备工作从 BIOS 开始启动到实模式进入保护模式加载并进入内核显示与打印GDT 和 IDT,中断解决关上虚拟内存实现堆和 malloc创立第一个内核线程多线程运行与切换锁与多线程同步过程的实现进入用户态一个简略的文件系统加载可执行程序零碎调用的实现键盘驱动运行 shell装置 BochsBochs 是一个硬件模拟器,咱们写的…
操作系统 关于操作系统:从零开始写-OS-内核-序篇 操作系统是计算机专业的外围学科,但我想即便是很多大学的 CS 本科操作系统专业课,也未必会设置这样规模和难度的我的项目。我是在 CMU 读研时修了它们的本科课程 15-410,这是课程的最大一个我的项目作业。对于很多计算机专业的同学,以及非科班转计算机的同学,尝试去做,哪怕是读懂这样一个我的项目,我想都是大有益处的。
操作系统 关于操作系统:OS大作业三实现银行家算法 数据定义:E:Existing Resource 示意以后资源总量A:Available Resource 示意以后可分配资源MaxR:示意每种资源须要的最大需求量C:Current Resource 示意以后已调配的资源R:每种资源的最大可能申请N:以后过程申请的资源数据间的关系:$$R = maxR – C$$$$\sum{C}+ A = E$$采纳的数据结构:假如资源品种有RNum种,过程…
操作系统 关于操作系统:进程管理 前言:Linux过程深入分析,从内核设计方面学习什么是过程程序自身并不是过程,过程是处于执行期的程序以及相干资源的总称。过程构造工作队列(task_list),存储若干过程描述符过程描述符(task_struct),存储一个过程的所有信息过程调配和寄存过程描述符的调配,通过 slab 分配器调配,能够实现对象复用(预调配和反复…
操作系统 关于操作系统:操作系统持久化文件系统 随着工夫的推移,无关存储虚拟化造成了两个要害的形象。第一个是文件(file)。文件就是一个线性字节数组,每个字节都能够读取或写入。每个文件都有某种低级名称,通常是某种数字,用户通常不晓得这个名字。因为历史起因,文件的低级名称通常称为inode号(inode number)。每个文件都有一个与其关联的inode号。