Linux 汇编语言开发指南
developerWorks 中国
>
Linux
>
Linux 汇编语言开发指南
文档选项
<tr
valign="top"><td width="8"><img alt="" height="1" width="8"
src="//www.ibm.com/i/c.gif"/></td><td width="16"><img alt="" width="16"
height="16" src="//www.ibm.com/i/c.gif"/></td><td class="small"
width="122"><p><span class="ast">未显示需要 JavaScript
的文档选项</span></p></td></tr>
将此页作为电子邮件发送
级别: 初级
肖文鹏
(xiaowp@263.net
), 北京理工大学计算机系硕士研究生
2003 年 7 月 03 日
汇
编语言的优点是速度快,可以直接对硬件进行操作,这对诸如图形处理等关键应用是非常重要的。Linux 是一个用 C
语言开发的操作系统,这使得很多程序员开始忘记在 Linux 中还可以直接使用汇编这一底层语言来优化程序的性能。本文为那些在Linux
平台上编写汇编代码的程序员提供指南,介绍 Linux 汇编语言的语法格式和开发工具,并辅以具体的例子讲述如何开发实用的Linux 汇编程序。
一、简介
作
为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。就拿 Linux
内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux
的启动部分。由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能。
大
多数情况下 Linux 程序员不需要使用汇编语言,因为即便是硬件驱动这样的底层程序在 Linux 操作系统中也可以用完全用 C
语言来实现,再加上 GCC
这一优秀的编译器目前已经能够对最终生成的代码进行很好的优化,的确有足够的理由让我们可以暂时将汇编语言抛在一边了。但实现情况是 Linux
程序员有时还是需要使用汇编,或者不得不使用汇编,理由很简单:精简、高效和 libc 无关性。假设要移植 Linux
到某一特定的嵌入式硬件环境下,首先必然面临如何减少系统大小、提高执行效率等问题,此时或许只有汇编语言能帮上忙了。
汇编语言
相关文档:
1. 从硬盘安装linux的学习,和实验 Done
Use wingrub, install the Ubuntu on /dev/sda2. and could boot!
2. pppoe connection &nbs ......
搞了三天的OpenCV终于把这个类库加上去了。原本是使用Red Hat Linux 9,但是强烈不推荐,因为基本上很多很多的软件都要重新升级更新。gcc必须升级到4.x,则gmp和mpfr也要更新,make也要到3.8版本,并且glibc也必须在2.6版本。编译gcc实在是太痛苦了,无比无比的痛苦,耗时3个多hours,还是来了个error(glibc必须升级)。编 ......
在进行嵌入式开发之前,首先要建立一个交叉编译环境,这是一套编译器、连接器和libc库等组成的开发环境。本文具体说明了嵌入式交叉编译环境的建立过程
和具体的操作步骤,希望能够对各位朋友搭建对应的交叉编译环境有所帮助。
一、所需软硬件环境
■ 主机环境
建立交叉编译工具链的主机环境:
Ubuntu 8.10,gcc-4.3 ......
PCI是外围设备互联的简称(Peripheral Component
Interconnect)的简称,作为一种通用的总线接口标准,他在计算机系统中得到了广泛的使用。PCI的速度能够达到132M/s。在这里简单的介
绍一下 linux 下PCI驱动的实现。
在编写一个PCI驱动的时候我们先得确定系统中是否有我们的设备。我们可以通过lspci
查看PCI设备。
[roo ......
linux命令大全 cat cd
chmod chown
cp cut
名称:cat
使用权限:所有使用者
使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName
说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案)
参数:
-n 或 --number 由 1 开始对所有输出的行数编号
-b 或 --number-nonblank 和 -n ......