首页  软件  游戏  图书  电影  电视剧

请输入您要查询的图书:

 

图书 Linux源码趣读
内容
内容推荐
用读一本小说的心态来阅读本书,你会对整个操作系统的体系结构和逻辑细节有非常清晰的认识,从此爱上并阅读更多的操作系统源码。
第1部分:进入内核前的苦力活。覆盖从开机到运行到Linux中的main函数的关键流程解析,帮你清晰认识Intel CPU的体系结构。
第2部分:“大战”前期的初始化工作。讲述main中的各种初始化函数,这些函数是操作系统各个模块的交互桥梁,为理解后续操作系统各个模块的运作原理打好基础。
第3部分:一个新进程的诞生。讲述从内核态切换至用户态,并建立起第一个用户进程的全部过程。学完这部分,你将会理解一个多进程的操作系统是如何建立和运作的。
第4部分:shell程序的到来。主要讨论如何将磁盘中存储的shell程序加载到内存中来,并最终交给CPU去执行。通过这个过程你会看清一个程序从存储到硬盘到最终被执行的全部过程。
第5部分:一条shell命令的执行。让我们跟着一条shell命令“走南闯北”,从用户输入给计算机一个字符串开始,一直到该程序的最终执行,这一过程能帮你把前面所学的知识融会贯通,整个操作系统的启动流程与运作原理,将会生动形象地浮现在你的脑海中。
作者简介
闪客,平时乐于研究计算机底层技术与做技术分享。作为“无聊的闪客”微信公众号作者,两年时间积累近10万粉丝,擅长使用通俗易懂的语言讲解复杂的技术原理,他的“破玩意儿”系列、“降妖除魔”系列、“操作系统重磅系列”等,都深受读者喜爱。
目录
第1部分 进入内核前的苦力活
第1回 最开始的两行代码
开机后初始化指向BIOS
读取硬盘启动区(第一扇区)
加载到内存0x7c00位置,并跳转到这里
第2回 从0x7c00到0x90000
第3回 做好访问内存的基础准备工作
这些寄存器是干什么的
CPU访问内存的三种途径
再次回顾一下前三回的内容
第4回 把全部的操作系统代码从硬盘搬到内存
把剩下的操作系统代码从硬盘请到内存
聊聊操作系统的编译过程
挪来挪去的真讨厌
扩展阅读:什么是中断
扩展阅读:什么是软中断
第5回 将重要的操作系统代码放在零地址处
第6回 解决段寄存器的历史包袱问题
保护模式下的物理地址计算方式
全局描述符表
第7回 六行代码进入保护模式
第8回 重新设置中断描述符表与全局描述符表
第9回 开启分页机制
第10回 进入main函数前的最后一跃
第1部分总结与回顾
第2部分 “大战”前期的初始化工作
第11回 整个操作系统就二十几行代码
第12回 管理内存前先划分出三个边界值
第13回 主内存初始化mem_init
第14回 中断初始化trap_init
第15回 块设备请求项初始化blk_dev_init
第16回 控制台初始化tty_init
第17回 时间初始化time_init
第18回 进程调度初始化sched_init
第19回 缓冲区初始化buffer_init
第20回 硬盘初始化hd_init
第2部分总结与回顾
第3部分 一个新进程的诞生
第21回 第3部分 全局概述
move_to_user_mode
fork
init
pause
第22回 从内核态切换到用户态
让进程无法跳出用户态
内核态与用户态的本质—特权级
特权级转换的方式
除了改变特权级还做了哪些事
第23回 如果让你来设计进程调度
整体流程设计
上下文环境
运行时间信息
优先级
进程状态
第24回 从一次定时器滴答来看进程调度
第25回 通过fork看一次系统调用
第26回 fork函数中进程基本信息的复制
第27回 透过fork来看进程的内存规划
LDT的赋值
页表的复制
第28回 番外篇——我居然会认为权威著作写错了
第29回 番外篇——写时复制就这么几行代码
储备知识
写时复制的本质
看看代码是怎么写的
第30回 番外篇——你管这破玩意儿叫文件系统
1.分块
2.位图
3.inode
4.间接索引
5.超级块与块描述符
6.文件分类
7.文件名
8.根目录
第3部分总结与回顾
第4部分展望
第4部分 shell程序的到来
第31回 拿到硬盘信息
第32回 加载根文件系统
硬盘中的文件系统格式是怎样的
内存中用于文件系统的数据结构有哪些
第33回 打开终端设备文件
第34回 进程2的创建
fork
close
open
execve
第35回 execve加载并执行shell程序
读取文件开头1KB的数据
将这1KB的数据解析为exec结构
判断是脚本文件还是可执行文件
准备参数空间
设置eip和esp,完成摇身一变
计算机的世界没有魔法
第36回 缺页中断
跳转到一个不存在的地址会发生什么
缺页中断do_no_page
缺页中断返回
第37回 shell程序跑起来了
第38回 操作系统启动完毕!
第39回 番外篇——调试Linux最早期的代码
整体思路和效果
第一步:配置虚拟机
第二步:安装qemu
第三步:下载并运行可调试的Linux-0.11源码
第四步:通过vscode远程调试
第40回 番外篇——为什么有些技术原理你怎么看也看不懂
第4部分总结与回顾
第5部分 一条shell命令的执行
第41回 一条shell命令的执行过程概述
第42回 用键盘输入一条命令
第43回 shell程序读取你的命令
第44回 进程的阻塞与唤醒
第45回 解析并执行shell命令
第46回 读硬盘数据全流程
如果让你来设计这个函数
鸟瞰操作系统的读操作函数
执行读操作file_read
第47回 读取硬盘数据的细节
第48回 信号
第49回 番外
标签
缩略图
书名 Linux源码趣读
副书名
原作名
作者 闪客
译者
编者
绘者
出版社 电子工业出版社
商品编码(ISBN) 9787121462870
开本 16开
页数 412
版次 1
装订 平装
字数 553
出版时间 2023-09-01
首版时间 2023-09-01
印刷时间 2023-09-01
正文语种
读者对象 普通大众
适用范围
发行范围 公开发行
发行模式 实体书
首发网站
连载网址
图书大类 计算机-操作系统
图书小类
重量 726
CIP核字 2023170604
中图分类号 TP316.85
丛书名
印张 26.5
印次 1
出版地 北京
240
171
23
整理
媒质
用纸
是否注音
影印版本
出版商国别
是否套装
著作权合同登记号
版权提供者
定价
印数
出品方
作品荣誉
主角
配角
其他角色
一句话简介
立意
作品视角
所属系列
文章进度
内容简介
作者简介
目录
文摘
安全警示 适度休息有益身心健康,请勿长期沉迷于阅读小说。
随便看

 

兰台网图书档案馆全面收录古今中外各种图书,详细介绍图书的基本信息及目录、摘要等图书资料。

 

Copyright © 2004-2025 xlantai.com All Rights Reserved
更新时间:2025/5/12 5:39:53