吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1728|回复: 12
收起左侧

[C&C++ 原创] 《一个64位操作系统设计与实现》读书笔记

[复制链接]
oxygen1a1 发表于 2024-6-12 10:59
前言:
    抽时间(在论文、课程课余时间花了好久把书看到了13章,总共16章,后面是完善shell、用户态和FAT32文件系统,个人不太感兴趣,番外部分还没时间写,以后在埋坑吧)。    总体而言,这部书不能说不好吧,只能说非常垃圾,看到现在能不弃书全靠它代码完善,作者虽然很厉害,但是写书功底实在是难以恭维,凑活看下,因为国内书实在是没有基于x64架构设计的os,其中多核、apic、驱动设计、文件系统有些东西还是很先进的,能了解一个操作系统从编译、引导、到支持多核,工作量还是很大的。我把笔记转成pdf了,总共100多页,11万多字?现在分享一下,里面的代码我基本上都是看懂点到为止,因此有些东西可能理解的不到位,欢迎大家斧正。
   
项目地址:
这本书写的很烂,因此必须要靠它完善的源码才能看下去,
个人读书笔记地址:https://github.com/Oxygen1a1/Book-Notes-on-Design-and-Implementation-of-a-64-bit-Operating-System
源码地址:https://github.com/yifengyou/The-design-and-implementation-of-a-64-bit-os
目录
  chap0 前言
    基础概念
      操作系统
      操作系统构成
    环境搭建
      bochs编译
      nasm
      boot.img
    前置知识
      GNU的内嵌汇编
  chap1 BootLoader
    文件系统
      FAT12的构成
      FAT
      根目录区
    Loader
      虚拟软盘挂载
      loader原理
  chap2 内核层
    内核头
      内核头
      makefile
    屏幕显示
      显存写入
      ASCII像素位图
      color_printk
    异常
      errcode
    初级内存管理
      内核相关结构初始化
      alloc memory
    中断处理
      8259a pic
      触发中断
      简单键盘驱动编写
    进程管理基础概念
      PCB
      进程的创建
  chap3 应用层
    返回应用层
    系统调用
  chap4 intel硬件平台知识
  chap5 高级内存管理单元
    slab内存池
    slab_cache初始化
    slab_cache销毁
    slab_cache内存对象的alloc/free
    基于slab内存池的内核内存分配实现
      slab_init
      kmalloc
      kfree
    物理内存分配的调整
  chap6 APIC
    APIC概述
    Local APIC
      LAPIC寄存器表
      LAPIC 寄存器
      LVT
      中断优先级
      LAPIC中断的投递
    IO APIC
      IO APIC间接访问寄存器
      IO APIC寄存器介绍
    APIC初始化
      Local APIC Setup
      IO APIC setup
    高级中断处理
  chap7 驱动
    键/鼠驱动
      8042键盘控制器
      键盘驱动
      鼠标驱动
    磁盘驱动
      硬盘控制器
      ATA标准
      磁盘读写
  chap8 多核处理器
    超线程与多核
    多核启动
      ICR发送IPI
      SMP/ASMP
      配置AP
      自旋锁同步
  chap9 番外
    USB键鼠驱动编写
    PCI总线驱动
    磁盘驱动编写

免费评分

参与人数 7吾爱币 +3 热心值 +6 收起 理由
Justin000 + 1 热心回复!
hzh193536 + 1 + 1 我很赞同!
ingIM + 1 + 1 我很赞同!
NongY + 1 谢谢@Thanks!
zxinyun + 1 用心讨论,共获提升!
minibeetuaman + 1 谢谢@Thanks!
Yifan2007 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

w1066602520 发表于 2024-6-12 12:58
感觉就很复杂的样子
侃遍天下无二人 发表于 2024-6-12 23:32
Panel 发表于 2024-6-12 12:16
强烈打call

免费评分

参与人数 2吾爱币 +2 热心值 +1 收起 理由
oxygen1a1 + 1 我很赞同!
Yifan2007 + 2 这种书,你能啃的下去吗

查看全部评分

minibeetuaman 发表于 2024-6-12 12:52
在64位内存管理部分,这本书简直是不知所云,都不知道作者能不能自己看明白

免费评分

参与人数 1热心值 +1 收起 理由
oxygen1a1 + 1 我很赞同!

查看全部评分

mayunfei 发表于 2024-6-12 21:47
国内在基础领域 基本泛泛而谈 蜻蜓点水,或滥竽充数
看大学教材 就知道 空洞乏味
本质跟国度体制 有关
w81587679 发表于 2024-6-20 13:28
其实能看懂思路就已经不错了
darkfriday 发表于 2024-6-20 14:10
64位应该比32位要相对简单一些吧?我看过几本书写32位的,内存管理都写得不好
lyx0524 发表于 2024-7-2 08:23
唉,任到重远
bot4o7 发表于 2024-7-10 20:59
正在实习,虽然内容跟这些可能没关系,但我去,写操作系统这种事情,听起来就好刺激啊!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-12 14:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表