linux核心代码有多少
linux有2亿代码吗电码一般用线来表示。目前linux内核只有不到3000万行代码。
Linux操作系统源代码有多少行?
如何查看linux内核源代码?
一般是/usr/src/Linux *目录下的内核源代码。*.* (*.*代表内核版本,如2.4.23)在Linux系统中(如果没有类似的目录,是因为没有安装内核代码)。此外,还可以从网上免费下载。小心点,唐 不要总是下载,你 最好用它的镜像网站下载。请在库中找到合适的下载点,然后在pub/linux/kernel/v2.6/目录下下载2.4.23内核。代码目录结构
在阅读源代码之前,你还应该了解Linux内核源代码的整体分布。现代操作系统一般由进程管理、内存管理、文件系统、驱动程序和网络组成。Linux内核源代码的每个目录大致对应于此,其组成如下(假设相对于Linux-2.4.23目录):
该目录包括所有与架构相关的核心代码。它下面的每个子目录代表一个Linux支持的架构。比如i386就是Intel CPU及其兼容架构的子目录。PC一般都是基于这个目录的。
该目录包含编译内核所需的大多数头文件,例如include/linux子目录中的平台无关头文件。
该目录包含核心初始化代码(不是系统的引导代码),有两个文件,main.c和Version.c这是研究核心如何工作的一个很好的起点。
该目录包含所有的内存管理代码。与具体硬件架构相关的内存管理代码位于arch/*/mm目录下。
该目录包含系统中的所有设备驱动程序。它又分为几种类型的设备驱动程序,每种驱动程序都有相应的子目录。比如声卡的驱动对应驱动/声音。
6.ipc目录包含核心进程之间的通信代码。
该目录存储可以动态加载的内置模块。
8.fs目录存储了Linux支持的文件系统代码。不同的文件系统有不同的子目录。比如ext3文件系统对应ext3子目录。
内核内核管理的核心代码放在这里。同时,与处理器结构相关的代码放在arch/*/kernel目录中。
目录是核心网络部分代码,每个子目录对应于网络的一个方面。
该目录包含核心库代码,但与处理器结构相关的库代码放在arch/*/lib/目录中。
该目录包含用于配置内核的脚本文件。
目录下面是一些文档,是对每个目录功能的具体说明。
通常,每个目录中都有一个. dlinux代码有几个g?
Linux用于支持各种架构的源代码包含了约4500个C语言程序,存放在约270个子目录中,总共约200万行代码,占用磁盘空间约58MB。
Linux用于支持各种架构的源代码包含了约4500个C语言程序,存放在约270个子目录中,总共约200万行代码,占用磁盘空间约58MB。
linux在计算机系统中运行的程序大体上可以分为?说:
一般系统由:内核、外壳(命令解释器)和应用程序组成。
linux也是如此,linux的内核(2.6.),shell(/bin/bash),应用程序(Xwindow)等等。
或者:
Linux内核主要由五个子系统组成:进程调度、内存管理、虚拟文件系统、网络接口和进程间通信。
1.进程调度(sch:控制进程对CPU的访问。当需要选择下一个要运行的进程时,调度程序会选择最有价值的进程。可运行的进程实际上是一个只等待CPU资源的进程。如果一个进程正在等待其他资源,它是不可运行的。Linux使用相对简单的基于优先级的进程调度算法来选择新进程。
2.内存管理(MM)允许多个进程安全地共享主内存区域。Linux内存管理支持虚拟内存,即运行在计算机中的程序,其代码、数据和堆栈的总量可以超过实际内存大小。操作系统只把当前使用的程序块保存在内存中,其余的保存在磁盘中。必要时,操作系统负责在磁盘和内存之间交换程序块。内存管理在逻辑上分为硬件无关部分和硬件相关部分。硬件无关部分提供进程的映射和逻辑内存的交换;硬件相关部件为内存管理硬件提供虚拟接口。
3.虚拟文件系统,VFS)隐藏了各种硬件的细节,为所有设备提供了统一的接口。VFS提供了几十种不同的文件系统。空的准文件系统可以分为逻辑文件系统和设备驱动程序。逻辑文件系统是指Linux支持的文件系统,如ext2、fat等。设备驱动是指为每个硬件控制器编写的设备驱动模块。
4.网络接口(NET)提供对各种网络标准的访问,并支持各种网络硬件。网络接口可以分为网络协议和网络驱动程序。网络协议部分负责实现每一种可能的网络传输协议。网络设备驱动负责与硬件设备通信,每一个可能的硬件设备都有对应的设备驱动。
5.进程间通信(IPC)支持进程间的各种通信机制。