1.1 内核的任务 在纯技术层面上,内核是硬件与软件之间的一个中间层。 其作用是将应用程序的请求传递给硬件,并充当底层驱动程序,对系统中的各个设备和组件进行寻址。 时间: 2024-11-05 07:25:29
Linux内核主要有 5个子系统组成:进程调度 (SCHED) ,内存管理 (MM) ,虚拟文件系统 (VFS) ,网络接口 (NET)和进程间通信 ( IPC ). 1.进程调度 进程在进程调度子系统中微观串行,宏观并行.其余 4 个子系统都依赖于进程调度系统,因为每个子系统也需要挂起或恢复进程, 当它们需要做这些工作时,都得和进程调度子系统打交道. 进程的睡眠有两种情况,一种是因为得不到请求的资源而进入“深度睡眠” (TASK_UNINTERRUPTIBLE),深度睡眠直到得到请 求的资源后
linux内核的组成 一.linux内核源代码目录结构 arch: 包含和硬件体系结构相关的代码, 每种平台占一个相应的目录, 如 i386.ARM.PowerPC.MIPS 等. block:块设备驱动程序 I/O 调度. crypto:常用加密和散列算法(如 AES.SHA 等) ,还有一些压缩和 CRC 校验算法. Documentation:内核各部分的通用解释和注释. drivers:设备驱动程序,每个不同的驱动占用一个子目录,如 char.block.net.mtd .i2c 等.
Linux kernel: 内核设计流派: 单内核设计,但是充分借鉴了微内核体系设计的优点,为内核引入了模块化机制,内核高度模块化: 内核被模块化之后,一些最为基本最为重要的内容,被编译到内核核心:而其他更多的功能则以模块的方式来提供:而且支持动态装载和卸载各内核模块: 内核的组成部分: kernel:内核核心文件,一般为bzimage,经过压缩处理的镜像文件:通常内核核心文件保存在/boot/目录下,名称为vmlinuz-version-release kernel object(ko):内核
一.内核 1.什么是内核 内核其实就是操作系统,是驱动计算机硬件,实现人机操作,并提供其他服务器功能的底层系统.linux操作系统也称为"内核",指的是同一件事情. linux的内核是以模块化的方式工作的,主要工作任务包括存储管理.cpu管理.进程管理.文件系统管理.设备驱动管理.网络管理.系统调用.安全管理等. 2.内核的组成部分包括vmlinuz.initrd(linux5)或者initramfs(linux6)./lib/modules(模块,子核心) 二.内核设计 微内核 就是
其实内核就是系统上面的一个文件,包含了驱动主机各项硬件的检测程序与驱动模块,而Linux的内核是单内核体系,且是模块化的 内核的组成部分: 核心文件:/boot/vmlinuz-VERSION 模块文件:/lib/modules/VERSION/ *.ko: 模块间或许存在依赖关系: ramdisk: 非必须性内容:只是用于实现内核在无法加载根文件设备时提供 内核模块管理: lsmod命令:列出已经装载的模块 另一种办法:# cat /proc/modules modinfo: 查看指定模块的详
调度程是内核的组成部分,它负责选择下一个要运行的进程.进程调度程序可看作在可运行态进程之间分配有限的处理器时间的内核子系统.Linux是一个多任务操作系统,只有通过调度程序的合理调度,系统资源才能最大限制的发挥作用,多进程才会有并发执行的效果. 多任务操作系统分为非抢占式多任务和抢占式多任务.linux是一个抢占式的多任务操作系统,由调度程序决定什么时候停止一个进程的运行以便其它进程能够得到执行机会,这个强制的挂起动作就叫做抢占.进程在被抢占之前能够运行的时间是预先设置好的,叫进程的时间片.时间
Linux Kernel: 内核设计体系:单内核.微内核: 内核的组成部分: 1.Kernel:内核核心,一般为bzimage,通常位于/boot目录,名称为vmlinuz-VERSION-release: 2.Kernel object:内核对象,即内核模块,一般放置于/lib/modules/VERSION-release/,maninfo命令通过读取此文件的信息以显示相关信息: 内核模块与内核核心版本一定要严格匹配: []:N: [M]:Module,编译进模块中: [*]:Y,编译进内核
1.linux内核的组成部分: kernel文件: kernel object:内核模块 ramdisk:辅助性文件,用来驱动rootfs所在硬件设备. 2.linux启动流程: POST--->BOOT Sequence(bios中设定的启动顺序)--->从启动设备的mbr中引导grub第一阶段--->kernel(有时会借助于ramdisk文件)--->rootfs(根切换)--->/sbin/init(用户空间的第一个程序,它的配置文件存放于:/etc/inittab;
1.内核 1.1内核分类 内核设计流派: 单内核(monolithic kernel):Linux 把所有功能集成于同一个程序 微内核(micro kernel): Windows, Solaris 每种功能使用一个单独子系统实现 1.2.内核组成 组成部分: 核心文件:/boot/vmlinuz-VERSION-release 1.3.centos6启动 1.加载BIOS的硬件信息,获取第一个启动设备 2.读取第一个启动设备MBR的引导加