内核技术 

Linux内核和传统Unix内核的比较

    所有的unix内核都同宗同源,并且提供相同的api,现代的unix内核存在许多设计上的相似之处。unix内核几乎毫无例外的都是一个不可分割的静态可执行块(文件)。也就是说,它们必须以完整、单独的可执行块的形式在一个单独的地址空间中运行。unix内核几乎都需要硬件系统提供页机制以管理内存。这种页机制可以加强内存空间的保护,并保证每个进...

自己动手做一个迷你型Linux操作系统

    系统启动   因为我们要考虑从 flash 盘进行启动,所以我们选择用 lilo 作为我们的 boot loader,而不选用 grub。这是考虑到 grub 有较强的对硬盘和文件系统的识别能力,而 flash 盘到底不是标准的硬盘,并且我们选用的文件系统 grub 又不一定认识,搞不好的话 grub 反会弄巧成拙。而 lilo 就简单的多了,它在硬盘开始的 mbr 写入一个小程...

在Ubuntu 7.10下编译使用新内核的方法

  首先使用下面的方法编译内核:   编译内核和驱动:   安装声卡和显卡驱动:(可选)     > apt-get install alsa-source   (可能会建议安装 kernel-source-2.4.**, 选择不安装这个   kernel-2.4.**)   该命令会在目录下生成一个 alsa-driver.tar.bz2 文件。     > cd /usr/src   &nbs...

Linux内核按需动态装载和卸掉模块

linux是单内核结构,也就是说, 它是一个大程序, 其中任一函数都可以访问公共数据结构和其它函数调用。 (作为操作系统)另外一种可能的结构是多核式的, 各功能块自成一体, 相互之间由严格的通信机制相连。单核结构在添加新模块时,一种方法是重新调整设置,所以非常费时。 比如,你想在内核中加一个ncr 810 scsi的驱动程序, 你必须重新设置, 重建内核。这也...

深入分析 Linux 内核链表的数据结构

  一、 链表数据结构简介   链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序性和组织链的空间损失。     ...

LINUX内核升级

  linux的一个重要的特点就是其源代码的公开性,全世界任何一个软件工程师都可以将自己认为优秀的代码加入到其中,由此引发的一个明显的好处就是linux修补漏洞的快速以及对最新软件技术的利用。而linux的内核则是这些特点的最直接的代表。           为什么要升级内核           正如它的名字的字面意义,linux的内核承担着linux操作...

Linux系统 2.4和2.6内核上Web服务比较

  在支持企业应用程序方面,linux 2.6 内核做了很多改进。本文给出了 ibm linux technology center 的 web 服务测试工作的结果,从各个不同的角度对 linux 2.4 和 2.6 内核进行了比较。其中的亮点是 2.6 内核的关键增强功能、测试方法学和测试本身的结果。最终结果:2.6 内核提供 web 页服务要比 2.4 快得多,并且可靠性一点也不差。   在 ibm linux tech...

Linux 2.6 内核中的最新电源管理技术综述

前言 本系列文章将结合近年来不断在各种硬件(包括 cpu、芯片组、pci express 等各种最新总线标准以及外设)上新增的节能技术,从 linux® 2.6内核及整个 software stack (包括 kernel、middleware 以及各种用户态 utility)如何添加对这些创新的节能技术的支持这一角度,为读者介绍 linux 操作系统近几年来在电源管理方面所取得的长足进步以及未来的发展方...

更换 Linux 核心

  联系作者:ols3@www.tnc.edu.tw      更换 linux 核心是每一位 linux 主机管理者经常要面对的问题, 本文将一些文件串联在一起, 供各位参考      更换 linux 核心(kernel) 对刚接触 linux 管理者而言, 多少会觉得有点困难; 其实只要试个几次, 很快地, 您就会感到驾轻就熟.   早期更换 linux kernel 只有采用原始码编译一途, 近几年由于套件...

内核中的互斥之我见

  /*e4gle:在我修改linux源代码的过程中曾被大量的内核互斥现象所困扰,这需要利用内核锁去解决,虽然最后大部分解决,但我觉得应该留下些什么,也没时间写了,偶尔看见这位兄弟的文章,觉得正是我想整理的,所以拿出来给大家分享,关于bottom_half和中断的问题,在tcp/ip半底中绝对不能对文件读写操作,不然就panic,恰恰我在linux中的增强功能就有这个操...