【第21期】观点:人工智能到底用 GPU?还是用 FPGA?

linux内核_目录介绍(1)

原创 2016年08月28日 21:51:29

linux目录是源代码的主目录,在该主目录下包括所有的14个子目录,还有唯一的一个Makefile文件。


目录结构如下图


这个Makefile文件是编译辅助工具软件make的参数配置文件。make工具软件的主要用途是通过识别哪些文件已被修改,从而自动的决定在一个含有多个源程序的文件的程序系统中哪些文件需要被重新编译。因此make工具软件是程序项目的管理软件。


接下来进入boot


boot中含有三个汇编语言文件,是内核源代码中最先被编译的程序。这三个程序完成的主要功能是当计算机加电时引导内核启动,将内核代码加载到内存中,并做一些进入32位保护运动方式前的系统初始化工作。其中bootsect.s和setup.s程序需要使用as86软件来编译,而head.s需要用GNU as来编译。

bootsect.s程序是磁盘引导块程序,编译后会驻留在磁盘的第一个扇区中(引导扇区,0磁道(柱面),0磁头,第一个扇区)。在PC上电ROM BIOS自检后,将被BIOS加载到内存0x7c00处进行执行

setup.s程序主要用于读取机器的硬件配置,并把内核模块system移动到适当的内存位置处。

head.s程序会被编译连接在system模块的最前部分,主要进行硬件设备的探测设置和内存管理页面的初始设置工作。



版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

part1.Linux内核源代码的目录概览

前言 Linux是一种单内核的系统。补充讲解一些微内核与单内核(又称“宏内核”):以下参考博文微内核和单内核 微内核(Microkernel kernel)——在微内核中,大部分内核都作为单...

Linux内核协议栈分析之网卡初始化——tcp/ip通信并不神秘(1)

写在代码前: 写技术类文章的一个痛苦之处在于——写简单了,看的人觉得没意思;写难了,又看不懂是什么意思。例如——《redis源代码分析——事件机制》http://blog.csdn.net/freas_1990/article/details/8253906。所以,最简单的就是写一些对话了。不过写对话毕竟不是写技术类文章,姑且当做消遣来看吧。 本文将会以Linux1.0版本,来简

几个重要的RedHat Linux内核文件介绍 (1)

From:http://tech.sina.com.cn/s/s/2006-06-27/061923370.shtml   Linux服务器内核编译基础   mynix编译自www.linux...

在Ubuntu上为Android增加硬件抽象层(HAL)模块访问Linux内核驱动程序

在Android硬件抽象层(HAL)概要介绍和学习计划一文中,我们简要介绍了在Android系统为为硬件编写驱动程序的方法。简单来说,硬件驱动程序一方面分布在Linux内核中,另一方面分布在用户空间的硬件抽象层中。接着,在Ubuntu上为Android系统编写Linux内核驱动程序一文中举例子说明了如何在Linux内核编写驱动程序。在这一篇文章中,我们将继续介绍Android系统硬件驱动程序的另一方面实现,即如何在硬件抽象层中增加硬件模块来和内核驱动程序交互。在这篇文章中,我们还将

Linux内核源码目录介绍

Linux内核源码目录介绍 2008-02-29 14:46:54 分类: LINUX  Linux的内核源代码可以从很多途径得到,我一般常常去kernel.org...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)