Comments (10)
第一章需要向用户解释 用户态,内核态的概念,用户程序,第三方库,系统调用之间的关系,操作系统的作用,然后才引出内核模块编程。
单独拿出一章讲解linux内核中的一些常见数据结构,hlist,链表,队列,ring buffer,radix tree等,这些数据结构是后面讲解内核模块编程的比较重要的一个环节
from lkpa.
每一章节的开始应该先介绍这个部分的用途,如何影响Linux的行为,涉及了哪些系统调用,整个框架是如何的。
from lkpa.
第一章节 重构
大纲:
- 介绍操作系统的基本概念,资源管理和提供上层应用的编程接口的角度考虑,然后分别介绍其管理的资源有哪些,磁盘、内存、CPU、网络等,以此解释了虚拟内存、文件系统、 进程、网络、系统调用等几个方面
这个部分起到操作系统概述的作用,参考<<深入理解计算机系统>> - 待续
from lkpa.
@wenshizhang 这个部分交给你了
from lkpa.
我目前是这么设想的,原第一章我觉得第一节认识操作系统讲的有点模糊,读者可能没有一个该有的理解。后面的章节像Linux/Unix介绍、LInux内核、LInux内核源代码这些我觉得安排的挺合理。
第一小节分为部分:
1.1.1什么是操作系统:以人类社会类比计算机世界,通过举例对操作系统有一个宏观上的大致了解。
1.1.2 操作系统的组成:前面一节已经有了宏观上的认知,这节就来讲讲”微观“概念——操作系统具体组成。以程序运行角度引出为什么会有这个子系统以及子系统是做什么的。
这是目前的理解,大家有什么建议或者意见提出来,我们一起讨论。
from lkpa.
我觉得没比较太宏观的讲,毕竟本书并不是一本操作系统书,本书其实是一个讲述一个具体的操作系统实例linux,假设读者之前都已经学习了操作系统,宏观层面不用单独作为一节,一句话带过即可,主要还是从微观层面来讲。两个部分合并为一节
from lkpa.
我依然觉得宏观要讲,读者需要有一个这样的印象。我不希望我们的书给读者造成一个操作系统由一些子系统构成然后每一个子系统是什么什么,并没有一个整体的概念。
也就是说,我想要给读者的第一印象是操作系统是一个整体的,各个子系统像齿轮一样是卡在一起工作的。可能举例不是很准确,意思就是这样。
from lkpa.
计算机是一堆硬件+OS+上层应用+网络 组成,OS在这里承上启下,我希望的就是从这个层面来说,至于你说的宏观,我也不否认,只是不用花一个章节来说,我觉得原来书中的从不同角度宏观来看就可以了。
from lkpa.
并不是一个章节,我设想的是上面这些都是在第一章的第一小节中讲的。我想要修改原来书中的从不同角度看这部分,从不同角度看很新颖,写的很详细,但是我并没有从这几个小节中得到OS承上启下的信息。这就是我说的宏观,就像是看电影一样,先来一个”长镜头“看看OS是处在哪一层,上下分别是什么。然后调到“微距”,具体看OS包括了什么。
from lkpa.
可以没问题,只要不是把宏观部分用一个小节单独阐述就可以,宏观和微观是放在同一小节中的。
from lkpa.
Related Issues (19)
- 将word版本的原书稿转换为Markdown格式
- 确定改编书籍的计划和人员安排 HOT 3
- 文字纠正和代码更新 HOT 7
- 文字纠正和代码更新(4-6章) HOT 13
- 文字纠正和代码更新(7-9章) HOT 16
- 希望这本书给读者带来什么? HOT 12
- 文字纠正和代码更新(1-3章) HOT 7
- linux内核模块编程入门(第二章节) HOT 10
- Linux内核数据结构概述(第三章节) HOT 8
- 有必要加入内嵌汇编的语法介绍嘛? HOT 3
- 标点错误,格式错误,代码缩进(8.1,8.2,8.3节) HOT 1
- 代码版本问题 HOT 1
- 第一阶段Review HOT 2
- 代码问题
- 第八章内容修订 HOT 5
- 关于这本书第四章内存管理,4.6的示例代码的问题
- gitbook失效了,提示Page Not Found
- gitbook无法阅读
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lkpa.