定制Linux系统原理

1、名词说明
  1)主系统
  制作Linux系统并不是在一无所有的裸机上完成的,需要一个帮助我们制作系统的系统,这个系统就称为“主系统”。我们制作的系统就是依靠这个主系统来逐步完成的,因此主系统的选择非常重要。
  2)目标系统
  目标系统就是我们要完成的系统
  3)临时系统
  在制作目标系统 的过程中会有一个小型的过渡系统,这个系统在辅助制作完成目标系统后就不再使用了,所以称为临时系统。
  4)编译工具
  将Binutils(汇编工具)、GCC(编译器)合称为编译工具。
  5)工具链
  将Binutils(汇编工具)、GCC(编译器)和GLibc(标准C函数库)的组合称为工具链,有时候也会将一些需要用到的函数库作为工具链的一部分,使用工具链生成的可执行文件总是使用该工具链中的函数库。
  在整个制作过程中,各个阶段都会产生工具链,为了能清楚并准确的表达某个工具链,对各个阶段的工具链名称做如下规定:
  原工具链:主系统的工具链
  预工具链:用于生成临时工具链的工具链
  临时工具链:用于生成临时系统的工具链
  目标工具链:用于生成目标系统的工具链
  6)辅助命令
  在编译软件包的过程中,除了工具链以外还需要一些命令的参与,如make,这些命令合称为辅助命令
  7)工具链环境
  将工具链连同辅助命令合称为工具链环境,不同的阶段会出现不同的组合,下面对各个阶段的工具链环境的称呼做如下规定:
  预工具链环境:预工具链+主系统的辅助命令及基本函数库
  临时工具链环境:临时工具链+临时系统中的辅助命令及基本函数库
  目标工具链环境:目标工具链+目标系统中的辅助命令及基本函数库
  8)运行环境
  在一个运行的系统中可以存在多个不同的环境,这些环境中有各自的根目录及环境设置,这样的环境称为运行环境。在制作过程中各个阶段会处于不同的运行环境,这里对称呼做如下规定
  主系统运行环境:-----
  目标系统运行环境:目标系统所在目录为根目录的运行环境
  9)纯净度
  这里的纯净度并不是一个计量单位,而是用于表达某系统与其它系统的相关性,如果一个系统的运行依赖于另一个系统,那么这个系统是不纯净的。我们的目标是制作一个完全独立运行的系统。而且不管主系统是什么,只要目标系统制作出来了,那么目标系统就不会因为主系统的不同而有差异。
  10)头文件
  用于编译的一类文件,一般以.h作为文件的后缀,存放了函数的接口描述、结构体信息等程序设计相关的内容。
  2、源代码的编译过程

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-10-13 18:47:46

定制Linux系统原理的相关文章

如何定制Linux操作系统环境变量

Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境.通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义.用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量. 常见的环境变量 对于PATH和HOME等环境变量大家都不陌生.除此之外,还有下面一些常见环境变量. ◆ HISTSIZE是指保存历史命令记录的条数. ◆ LOGNAME是指当前用户的登录名. ◆ HOSTNAME是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个

定制x86 Linux系统

/************************************************************************************* * 定制x86 Linux系统 * 说明: * 制作嵌入式Linux系统是了解的,但是定制x86 Linux系统是很不熟悉,记录这篇文章. * * 2016-12-03 深圳 南山 平山村 曾剑锋 ****************************************************************

阿里云使用Linux系统应用配置有哪些问题

Linux下如何进行FTP设置 ECS Linux服务器如何配置网站以及绑定域名 Ubuntu安装vncserver实现图形化访问 阿里云Docker镜像库 ECS linux中添加ftp用户,并设置相应的权限 CentOS6.5安装vncserver实现图形化访问 Linux SCP命令复制传输文件的用法 Mysql,phpmyadmin密码忘了怎么办 Linux下l2tp客户端xl2tpd的安装配置 使用SFTP方式传输文件 ECS Linux系统盘网站数据更换至数据盘 WDCP的报错处理

新手认识Linux系统

典型的 Linux 发行版包含 Linux 内核,但还包含许多应用程序和工具.总的说来,Linux 分发版中出现的许多系统级别和用户级别的工具都来自自由软件基金会(Free Software Foundation)的 GNU 项目(GNU 是"GNU's Not UNIX"的缩写). 什么是 Linux? 用最简单的话说,Linux 是一个操作系统.它是一位赫尔辛基大学学生 Linus Torvalds(Linux 是 Linus's UNIX 的缩写)在 1991 年 10 月创造的

基于Linux系统的包过滤防火墙(1)

第1 章.基于路由器的包过滤防火墙 1.1 包过滤防火墙的一般概念 1.1.1 什么是包过滤防火墙 包过滤防火墙是用一个软件查看所流经的数据包的包头(header),由此决定整个包的命运.它可能会决定丢弃(DROP)这个包,可能会接受(ACCEPT)这个包(让这个包通过),也可能执行其它更复杂的动作. 在Linux系统下,包过滤功能是内建于核心的(作为一个核心模块,或者直接内建),同时还有一些可以运用于数据包之上的技巧,不过最常用的依然是查看包头以决定包的命运. 1.1.2 包过滤防火墙的工作层

循序渐进 Linux系统的软件配置技巧

技巧 LINUX配置 在这里,配置的对象并非内核,而是软件.至于网络的配置,主要在安装系统是已经基本完成:也可以进入GUI界面从菜单选择liloconf来配置. 与WINDOWS一样,在LINUX系统可以从光盘.软盘安装应用软件:但不同的是,它需要用命令mount来登录光驱.软驱.而且,软件大多是经过压缩的,所以还需要懂得如何解压.最后必须配置.编译才能运行.下面分四个方面进行介绍: 一.mount登录 LINUX的软驱设备用特殊文件/dev/fd0,文件系统是msdos,因此用以下命令登录,读

Linux系统IP路由的基础理论

也许你知道如何在Linux系统上用命令netstat或route来查找(甚至是增加/删除)已经存在的路由.但是在你做这些操作的时候你可能并不知道IP路由是如何工作的.本文将帮助你理解IP路由的原理,以及它是如何工作的.IP路由涉及到IP数据报文的转发.如果主机与目的主机直接相连,那么主机可以直接发送IP报文到目的主机,这个过程比较简单.例如,通过点对点的链接或通过网络共享.如果主机与目的主机没有直接相连,那么主机会将IP报文发送给默认的路由器,然后由路由器来决定往哪发送IP报文. IP路由涉及到

浅谈Linux系统的安全保护

无论你是Linux的普通桌面用户还是管理多个服务器的系统管理员,你都面临着同样的问题:日益增加的各种威胁.Linux是一个开放式系统,可以在网络上找到许多现成的程序和工具,这既方便了用户,也方便了黑客,因为他们也能很容易地找到程序和工具来潜入Linux系统,或者盗取Linux系统上的重要信息. "知己知彼,百战不殆".作为一个好的系统管理者,要保障整个系统的安全运行.最好的方法是了解攻击的工作原理和机制,了解攻击中使用了哪些工具,如何操作入侵等等.并知道如何从部署linux来降低风险.

Linux系统Centos无法启动怎么解决

Linux系统Centos无法启动怎么解决   解决方法: 1. 我们尝试了单用户是否可以登录啊,怎么做就不说了,耶可以登录,想了想是不是硬盘的问题呢,fsck修复了下还是不行.google吧. 从报错的信息来看,是调用prefdm时候出现问题的,那这是一个什么东西呢?网上一查询,这是启动X桌面的东东,是一个shell脚本,栖身在/etc/X11/prefdm. 2. 在单用户下可以正常登录,非单用户模式的时候却不行.看了下配置的runlevel是5,我们换了下3发现也没有问题,好啦,可以正常启