内核

戴文的Linux内核专题:16 配置内核 (12)

欢迎来享受Linux内核配置系列下一部分。如你所猜到的那样,内核支持大量不同的硬件、协议和特性。 下一组我们要讨论的特性是"EEPROM support"。电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory)是一种掉电或者意外关闭后不会擦除内容的存储器。 内核支持在I2C卡上的EEPROM芯片包括FRAMs、ROMs和SRAMs (I2C EEPROMs / RAMs / ROMs 来自多数供货商)。FRAM(同样也称作FeRAM是一种使用铁电原理而不是电介质存储数据的随机访问存储芯片)。ROM芯片是只读(Read Only Memory)芯片。SRAM是静态而不是动态存储器就像
2014-06-27
9分钟阅读时长

戴文的Linux内核专题:26 配置内核 (22)

你好!本篇我们将继续配置"kernel hacks",接着我们会配置整个安全系统。 Alpha和s390处理器需要配置下一个特性(Force weak per-cpu definitions)。这个特性修复了一个在这类处理器中普遍存在的寻址问题。其他的处理器无需启用这个特性。 内核转储可以用这个特殊的调试工具测试(Linux Kernel Dump Test Tool Module)。这个软件会允许内核开发者触发一个假错误来导致内核转储。内核开发者可以保证转储成功执行。 内核提供了不同的错误注射模块来允许内核开发者测试通知(CPU notifier error injection module)、 (PM notifier error injectio
2014-06-26
9分钟阅读时长

黑客内核:编写属于你的第一个Linux内核模块

曾经多少次想要在内核游荡?曾经多少次茫然不知方向?你不要再对着它迷惘,让我们指引你走向前方 内核编程常常看起来像是黑魔法,而在亚瑟 C 克拉克的眼中,它八成就是了。Linux内核和它的用户空间是大不相同的:抛开漫不经心,你必须小心翼翼,因为你编程中的一个bug就会影响到整个系统。浮点运算做起来可不容易,堆栈固定而狭小,而你写的代码总是异步的,因此你需要想想并发会导致什么。而除了所有这一切之外,Linux内核只是一个很大的、很复杂的C程序,它对每个人开放,任何人都去读它、学习它并改进它,而你也可以是其中之一。 学
2014-06-24
19分钟阅读时长

戴文的Linux内核专题:24 配置内核 (20)

欢迎进入Linux内核系列文章的下一篇!本篇我们继续配置文件系统。 首先,我们启用"General filesystem local caching manager",它允许内核存储文件系统缓存。这可以增加在存储空间开销上的性能。 为了调试目的,缓存系统可以通过统计信息监控(Gather statistical information on local caching)。通常上,这个特性应该只在你计划调试的时候启用。 下面的特性很像上面的,但是这个特性存储延迟信息(Gather latency information on local caching)。再说一次,这是个调试特性。 "Debug FS-Cache"提供了很多其他的缓存系统的调试功能。 下面
2014-05-27
8分钟阅读时长

戴文的Linux内核专题:23 配置内核 (19)

欢迎进入Linux内核系列文章的下一篇!我们正在接近配置过程的终点。在这篇文章中,我们将会讨论固件驱动和文件系统驱动。 这个分类中的第一个驱动是寻找启动盘(BIOS Enhanced Disk Drive calls determine boot disk)。有时,Linux不会知道哪个盘是启动盘。这个驱动允许内核询问BIOS。Linux接着在sysfs上存储信息。Linux需要知道这些来设置bootloader。 即使BIOS EDD服务被编译进了内核,这个选项可以设置这些服务不激活(Sets default behavior for EDD detection to off )。EDD代表的是"Enhanced Disk Drive"(增强磁盘驱动器)。 当使用kex
2014-05-27
8分钟阅读时长

戴文的Linux内核专题:22 配置内核 (18)

你好!准备好阅读下一篇文章了么?在本篇中,我们将会讨论辅助显示。辅助显示是一些小的LCD屏幕;大多数小于或等于128x64。接着,我们会讨论用户空间IO驱动,一些虚拟驱动,Hyper-V,开发中驱动,IOMMU,和其他一些内核特性。 第一个配置辅助显示的驱动是"KS0108 LCD Controller"。KS0108 LCD Controller是由三星制造的图形控制器。 下面可以设置LCD并口地址(Parallel port where the LCD is connected)。第一个并口地址是0x378,下一个是0x278,第三个是0x3BC。这些不是地址唯一的选择。大多数人不需要改变这个。shell命令"cat /proc/iop
2014-05-24
7分钟阅读时长

想要成为Linux内核高手的四种有效途径

作者:夜域诡士 我曾经看过一篇电影,里面是这样说的,你如果要想理解一个人的想法,那就他做什么,你也做什么.我也曾经问过别人怎么才能学好Linux内核,大多数回答是买本教材仔细研究,但我认为这是不够的,我认为至少要做一下介绍的一个才算是高手(你只需要会C和汇编就好了) 方法一:编写你自己的操作系统 有的人认为这可能是疯狂的想法,这貌似是很厉害的人物才会去做。其实不然,也不需要你做多么强大功能,就算你的系统只能看一张图片,那么我也同样的恭喜你,你成功了。即使你自己写的系统功能不是很强大,但它足以说明你对Linu
2014-04-18
3分钟阅读时长