文档章节

【读书笔记】深入理解 Linux 内核 启动篇

灰花走湿
 灰花走湿
发布于 2017/12/27 10:29
字数 372
阅读 19
收藏 0

 

2017.12.27 开始阅读学习 Linux 内核篇,用最通俗易懂的语言记录下来.

 

2017.12.27 Linux 与其他类 Unix 比较

  1. 内核为单块结构(即微内核,组成部分逻辑独立,但物理不独立)

            Linux 内核与其它商用 Unix 变体也是单块结构

    2.   是否支持模块的动态装载和卸载?

            Linux 支持按需自动装载和卸载,部分 Unix 变体支持,大部分是不支持的

    3.    如何支持多线程应用程序?

            Linux 把轻量级进程作为执行上下文,使用 clone() 发起系统调用

            Unix 基于内核线程实现

    4.    是否支持抢占式内核?

            Linux 和 部分 Unix 都支持抢占,所谓的抢占是按优先级来处理任务(特权任务|特权模式)

    5.    如何支持多处理器?

            Linux 支持的更好,使得单个处理器准确处理任务,但是此处的并行处理是相对的,因为

            内部实现是通过内核锁来,仍然有少量代码是串行执行的(最优化)

    6.    如何更好的支持不同文件系统?

            Linux 通过面向对象虚拟文件系统来使得兼容不同文件系统类型更容易,

            文件系统使用场景:

                                    普通场景 Ext2

                                    为避免较长文件系统检查 Ext3(发生系统崩溃时)

                                    小文件 | 系统

    7.      To be continued :)

© 著作权归作者所有

共有 人打赏支持
灰花走湿
粉丝 6
博文 1
码字总数 372
作品 0
海淀
高级程序员
私信 提问
Linux内核学习之一-Take It Easy!

起-做个了解底层的码农 节前上班的日子总是那么悠闲,这么集中的时间,正好集中学习一下。一直以来都做的是Java开发,对不了解底层,总觉得心有不安。听到别人说起“进程切换”、“内存管理”...

黄亿华
2014/01/26
0
6
深入学习Linux Kernel/Driver?还是深入学习C++?

最近很纠结一个问题:我有两本书《深入理解Linux内核》、《C++ Primer》;先深入的研究那一本??? 因为踏入软件行业也一年多了!大部分时间都是在学习、调试驱动、研究Linux kernel源码、A...

朱一心
2013/05/30
2.6K
10
Linux运维人员成长之路必学书籍资料推荐

对于从事或者即将从事Linux运维的童鞋来说,学习书籍和视频课程两者缺一不可,当然最重要的是要付诸于实践。今天为大家推荐一些不错的书籍与学习课程,,希望对对大家有帮助:http://edu.51ct...

让往事随风
2016/06/13
235
0
宋宝华: 迭代螺旋法——关于Linux学习方法的血泪建议

在下是一个码农,也号称是一个老湿,平生阅码农无数(吹牛的 ^-^)。经由大量的案例,我能够理解了为什么很多码农学了很多年Linux,还是感觉没有掌握要领,仍然内心崩溃,最终对Linux吐血而亡,...

21cnbao
2018/08/18
0
0
给PHP扩展/C语言/网络编程初学者推荐的几本书

Linux/Unix系统 深入理解计算机系统 UNIX环境高级编程 深入理解Linux内核 网络通信编程 UNIX网络编程 TCP/IP详解 Linux多线程服务端编程 数据结构与算法 算法导论 《数据结构》(C语言版) ...

Surjur
2014/08/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

四、RabbitMQ3.7在CentOS7下的安装

安装依赖 sudo yum install -y gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf java-1.8.0-openjdk-devel git 创建yum源 vi /etc/yum.repos.d/rabbitmq-erlang.repo [......

XuePeng77
今天
2
0
android 延长Toast的时长

示例:myToast(5000,"hello"); public void myToast(int showTime, String msg) { Toast hello = Toast.makeText(getActivity(), msg, Toast.LENGTH_SHORT); new CountDownTimer(......

雨焰
昨天
4
0
浅谈mybatis的日志适配模式

Java开发中经常用到的日志框架有很多,Log4j、Log4j2、slf4j等等,Mybatis定义了一套统一的日志接口供上层使用,并为上述常用的日志框架提供了相应的适配器。有关适配器模式例子可以参考 设计...

算法之名
昨天
13
0
大数据教程(13.6)sqoop使用教程

上一章节,介绍了sqoop数据迁移工具安装以及简单导入实例的相关知识;本篇博客,博主将继续为小伙伴们分享sqoop的使用。 一、sqoop数据导入 (1)、导入关系表到HIVE ./sqoop import --connect...

em_aaron
昨天
3
0
Git cherry-pick 使用总结

应用背景:假设现在有两个分支:dev_01, dev_02. 如果我想把dev_01分支上的某几个commit合并到dev_02分支, 那么怎么办呢? 这就是cherry-pick的工作了。cherry-pick会捡选某些commit, 即把某...

天王盖地虎626
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部