
Linux
大空新一
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux内核源代码目录结构
arch:英文单词architecture的简写,包含和硬件体系结构相关的代码。每种平台占一个相应的目录,如i386、amd64、arm、mips等。block:块设备驱动程序I/O调度。crypto:常用加密和散列算法、压缩和校验算法。Documentation:各部分的注释信息。firmware:某些驱动需要的固件。driver:驱动程序。不同的驱动程序都存在于不同的子目录原创 2014-03-28 16:32:37 · 654 阅读 · 0 评论 -
Linux系统ELF文件二进制格式分析(一)
ELF是Executable andLinkable Format的缩写,它是Linux下可执行文件、目标文件和库文件的格式标准(Windows系统中可执行文件、目标文件和库文件的格式标准为PE格式)。ELF一个特别的优点在于同一文件格式可以用于Linux内核支持的几乎所有的体系结构上。该格式标准不仅用于用户空间应用程序和库文件,还用于构建模块,且内核本身也是ELF格式。我们知道,可执行文件可原创 2015-03-09 11:38:50 · 2750 阅读 · 0 评论 -
Linux系统ELF文件二进制格式分析(二)
本文接着《Linux系统ELF文件二进制格式分析(一)》继续分析ELF文件格式原创 2015-03-11 11:16:35 · 4275 阅读 · 0 评论 -
Linux系统ELF文件二进制格式分析(三)
本文接着《Linux系统ELF文件二进制格式分析(二)》进行分析四、符号表符号表保存了程序实现或使用的所有变量和函数,在一定程度上,变量和函数都可以认为是一种符号。如果一个目标文件当中使用了自身未定义的符号,则这个符号是未定义符号。这种符号必须在链接过程中解决其定义问题,可以是静态链接时在其他的目标文件或者库当中获取其定义,也可以是在加载时通过动态链接在共享库当中获取定义。符号表在原创 2015-03-17 20:03:00 · 2924 阅读 · 0 评论 -
Linux 2.6内核下外部模块的编译
Linux的模块编译在2.6内核后有了较大的修改,这使得在内核编译过程中对那些源码属于内核源码集中的模块的编译方便了许多。因此,如果想单独编译某些模块(如开发的驱动程序,这些代码为自主编写的),仅靠一般的makefile文件是不够的。2.4及其之前的内核模块编译需要在makefile文件中显示调用gcc编译器,并且需要添加多个参数才能实现。而2.6内核中,需要调用内核源码目录当中的顶层的mak原创 2014-03-26 22:43:53 · 840 阅读 · 0 评论 -
PV,VG,LV的关系和操作
PV,VG,LV构成了一种易于管理拥有一个或多个硬盘的主机的文件系统,这些硬盘可能只有一个分区也可能有多个。通过将这些物理存在的分区(或称为卷)PV(physical volume)进行整合,组成一个分区(卷)组VG(volume group),进而再次进行分配形成逻辑分区(卷)LV(logical volume)。创建成功的逻辑分区对于操作系统来说会想普通分区无异,其好处是可以动态调整分区大小。原创 2013-11-29 16:08:39 · 20054 阅读 · 1 评论 -
Linux系统SSH无密码登录远端主机
SSH无密码登录远端主机是通过非对称密钥认证方式实现的。假设A主机要用SSH登录B主机,需要在A主机上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥复制到B主机上。当A通过SSH连接B时,B就会生成一个随机数并用A的公钥对随机数进行加密,并发送给A。A收到加密数之后再用私钥解密,并将解密数回传给B,B确认解密数无误之后就允许A进行连接了。省去了输入密码的过程。要实现无密码登录需要有ssh和原创 2014-03-18 21:18:32 · 1112 阅读 · 0 评论 -
Linux各目录的内容
Linux是以“一切皆是文件”这一思想构建起来的操作系统,因此有必要熟悉其各目录的用途。Linux中目录结构仍然是树形结构,目录树的根节点称为根目录,用“/”表示。对你的电脑来说,有且只有一个根目录。所有的东西都是从这里开始。 /bin:该目录存放二进制可执行命令,bin是binary的简称,包含了引导启动所需的命令或普通用户可能用的命令。这些命令都是二进制文件的可执行程序,多是系统中重要转载 2014-03-14 16:01:10 · 589 阅读 · 0 评论 -
Ubuntu更新数据源
以下各命令都需要在root用户下执行1、首先备份Ubuntu12.04源列表cp /etc/apt/sources.list /etc/apt/sources.list.backup (备份原来的源列表)2、修改更新源gedit /etc/apt/sources.list (打开Ubuntu 源列表文件)3、把里面的列表替换成下面的列表(可以只写入一个源也可以写入多个源)翻译 2014-04-01 21:27:31 · 955 阅读 · 0 评论 -
Linux系统ELF文件二进制格式分析(四)
一、重定位项重定位是将ELF文件中未定义的符号关联到有效位置的过程,特别是目标文件中这一项尤为重要。本例中引用了C语言库函数printf和exit,链接时必须替换为该进程的虚拟地址空间中机器代码所在位置。每个ELF中,都有专门的类型为REL的节包含重定位项,标识了需要进行重定位的位置。每一项都是用相同的数据结构表示的。1. 数据结构由于历史原因,有两种类型的重定位信息,由原创 2015-04-10 20:12:45 · 1612 阅读 · 0 评论