博客首页
注册
建议与交流
排行榜
加入友情链接
推荐
投诉
搜索:
帮助
hyddd
激情,梦想,奋斗!
hyddd.cublog.cn
管理博客
发表文章
留言
收藏夹
博客圈
音乐
相册
文章
首页
关于作者
姓名:hyddd 职业:开发 年龄:23 位置:?? 个性介绍:我要变强大...
||
<<
>>
||
我的分类
文章列表 - 操作系统
Linux AT&T 汇编语言开发指南
<p>2003 年 7 月 03 日</p><blockquote>汇编语言的优点是速度快,可以直接对硬件进行操作,这对诸如图形处理等关键应 用是非常重要的。Linux 是一个用 C 语言开发的操作系统,这使得很多程序员开始忘记在 Linux 中还可以直接使用汇编这一底层语言来优化程序的性能。本文为那些在Linux 平台上编写汇编代码的程序员提供指南,介绍 Linux 汇编语言的语法格式和开发工具,并辅以具体的例子讲述如何开发实用的Linux 汇编程序。</blockquote><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify t……
查看全文
发表于:2008-10-26 ┆
阅读(209)
┆
评论(0)
解决Virtual PC 无法在PAE(物理地址扩展)模式下运行(转)
<h2>重新看《自己动手写操作系统》的时候,突然遇到这个问题,特此记录一下...<br></h2><h2> <a id="AjaxHolder_ctl01_TitleUrl" href="http://www.cnblogs.com/yuxiang9999/archive/2006/05/26/409993.html">解决Virtual PC 无法在PAE(物理地址扩展)模式下运行(转)</a> </h2> <div class="postText">提示:Virtual PC 在PAE模式下无法运行 <br>此版本的Virtual PC 无法在PAE(物理地址扩展)模式下运行。请恢复到正常状态下运行 <br>后查资料得知:PAE影响到了一些虚拟机软件和驱动的安装。 <br>解 决办法:右击桌面“我的电……
查看全文
发表于:2008-07-10 ┆
阅读(313)
┆
评论(0)
install bochs in Ubuntu 8.04
在Ubuntu8.04下装了一下BOCHS,继续以前没做完的课题,遇到一些问题,在这里记录一下,以作日后参考用。<br><br>1.Configure error:<br>sudo apt-get install lib6-dev<br><br><br>2.Configure error: GDK2.0缺失<br> lib<span class="__mozilla-findbar-search" style="padding: 0pt; background-color: yellow; color: black; display: inline; font-size: inherit;">gtk</span>2.0-dev <br>附一些参考资料:<br>---------------------------------------<br><b>Ubuntu 7.10 Linux建立C与GTK的开发环境</b><br><br>1、配置GCC 刚……
查看全文
发表于:2008-05-24 ┆
阅读(424)
┆
评论(0)
自己的操作系统“天蝎”--“Scorpio”
查看全文
发表于:2007-05-23 ┆
阅读(787)
┆
评论(1)
Temp
<br> ### ### <br> # # #  ……
查看全文
发表于:2007-05-22 ┆
阅读(752)
┆
评论(0)
操作系统学习常见疑惑问与答[接口规范部分]
<div align="left"><font color="#000000"><strong>作者:</strong>yxin1322</font></div><div align="left"><strong></strong></div><div align="left"><strong><font color="#000000"> blog:</font></strong><a href="http://blog.csdn.net/yxin1322"><font color="#0000ff">http://blog.csdn.net/yxin1322</font></a><font color="#000000"> 转载请注明出处</font></div><div align="left"><br></div><br><div> 大三的时候已经学过了《操作系统原理》这门课,虽然学习过……
查看全文
发表于:2007-05-11 ┆
阅读(769)
┆
评论(0)
8088汇编指令表
<img src="file:///C:/DOCUME%7E1/ADMINI%7E1/LOCALS%7E1/Temp/moz-screenshot-2.jpg" alt=""><h2 style="background-color: rgb(255, 1, 2); color: rgb(255, 255, 255);" class="main-title">8088汇编指令表</h2> <!-- begin content --> <div class="content"> <p>8088汇编指令表<br> 一、数据传输指令<br> ───────────────────────────────────────<br> 它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.<br……
查看全文
发表于:2007-05-09 ┆
阅读(573)
┆
评论(0)
Big-endian,Little-endian
多字节数在内存中的存放方式之一: <br> 数据0x11223344按little-endian存放时在内存中的排列为 <br> 低地址 高地址 <br> V V <br> 0x44 0x33 0x22 0x11 <……
查看全文
发表于:2007-05-08 ┆
阅读(817)
┆
评论(0)
Intel CR寄存器,CPU工作模式
<font size="2"><span style="font-family: 宋体;"><font color="#000000">Intel中的CR寄存器:<span lang="EN-US"></span></font></span></font><p style="font-family: 宋体;"> </p><p style="font-family: 宋体;"><font color="#000000" size="2"> </font> </p><p style="font-family: 宋体;"><font size="2"><font color="#000000"> 控制寄存器<span lang="EN-US">(CR0</span>、<span lang="EN-US">CR 1</span>、<span lang="EN-US">CR2</span>和<span lang="EN-US">CR3)</span>用於控制和确定处理器的操作模式以及当前……
查看全文
发表于:2007-05-05 ┆
阅读(949)
┆
评论(0)
stdarg.h笔记
#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) )<br><br>#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) )<br>#define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) )<br>#define va_end(ap) ( ap = (va_list)0 )<br><br> va_list args;<br> char buf[1024];<br> &……
查看全文
发表于:2007-04-28 ┆
阅读(1021)
┆
评论(1)
汇编端口作用详细列表-4
<DIV><BR>-------------------------------------------------------------------------------<BR>0461 r/w Extended NMI status/control register<BR> bit 7 = 1 NMI pending from fail-safe timer (read only)<BR> bit 6 = 1 NMI pending from bus timeout NMI status (read<BR>only)<BR> bit 5 = 1 NMI pending (read only)<BR> bit 4 reserved<BR> bit 3 = 1 bus timeout NMI enable (read/write)<BR> ……
查看全文
发表于:2007-04-14 ┆
阅读(518)
┆
评论(0)
汇编端口作用详细列表-3
<DIV><BR>-------------------------------------------------------------------------------<BR>0370-0377 ---- FDC 2 (2nd Floppy Disk Controller) first FDC at 03F0<BR> (8272, 8272A, NEC765)<BR> (82072, 82077AA for perpendicular recording at 2.8Mb)</DIV> <DIV>0370 r diskette Extra High Density controller board jumpers (AT)<BR>0370 r diskette controller status A (PS/2, PS/2 model 30)<BR>0371 r diskette controller status B (PS/2, PS/2 model 30)<BR>0372 w diskette controller DOR (Digital Output Register)<BR>0374 r diskette controller main status register<BR>0374 w diskette controller datarate select register<BR>0375 r/w diskette controller command/data register<BR>0376 r/w (2nd FIXED disk controller data register)<BR>0377 r diskette controller DIR (Digital Input Register)<BR>0377 w select register for diskette data transfer rate</DIV> <DIV>----------------……
查看全文
发表于:2007-04-14 ┆
阅读(546)
┆
评论(0)
汇编端口作用详细列表-2
<DIV><BR>-------------------------------------------------------------------------------<BR>0140-014F ---- SCSI (alternate Small Computer System Interface) adapter<BR> (1st at 0340-034F)</DIV> <DIV>-------------------------------------------------------------------------------<BR>0140-0157 ---- RTC (alternate Real Time Clock for XT) (1st at 0340-0357)</DIV> <DIV>-------------------------------------------------------------------------------<BR>015F ---- ARTEC Handyscanner A400Z. alternate address at 35F.</DIV> <DIV>-------------------------------------------------------------------------------<BR>0170-0177 ---- HDC 2 (2nd Fixed Disk Controller) same as 01Fx (ISA, EISA)</DIV> <DIV>-------------------------------------------------------------------------------<BR>0178-0179 ---- Power Management</DIV> <DIV>0178 w index selection for data port<BR>0179 r/w power management data</DIV> <DIV>……
查看全文
发表于:2007-04-14 ┆
阅读(565)
┆
评论(0)
汇编端口作用详细列表-1
<DIV>[This file was provided by Wim Osterholt (2:512/56 or <A href="mailto:wim@djo.wtm.tudelft.nl">wim@djo.wtm.tudelft.nl</A>).]<BR>Last Change: 11/6/94</DIV> <DIV><BR> XT, AT and PS/2 I/O port addresses</DIV> <DIV> Do NOT consider this information as complete and accurate.<BR> If you want to do harware programming check ALWAYS the<BR> appropriate data sheets. Be aware that erroneously programming<BR> can put your hardware or your data at risk. </DIV> <DIV> There is a memory mapped address in use for I/O functions of which I<BR> think it should be mentioned here. See at the end of this list.</DIV> <DIV>-------------------------------------------------------------------------------<BR>0000-001F ---- DMA 1 (first Direct Memory Access controller 8237)</DIV> <DIV>0000 r/w ……
查看全文
发表于:2007-04-14 ┆
阅读(571)
┆
评论(0)
A20 - a pain from the past
<h1>A20 - a pain from the past</h1> Everybody hates the CapsLock key, but keyboard manufacturers continue producing keyboards with CapsLock - it could be that someone wants it. <p> With A20 it is similar but worse. Really nobody wants it, but it continues to haunt us. </p><p> </p><h2>History</h2> The 8088 in the original PC had only 20 address lines, good for 1 MB. The maximum address FFFF:FFFF addresses 0x10ffef, and this would silently wrap to 0x0ffef. When the 286 (with 24 ad……
查看全文
发表于:2007-04-08 ┆
阅读(441)
┆
评论(0)
A20 Gate
<font size="6"><strong>A20 Gate</strong></font><br><a href="http://www.pagoda-ooos.org/" target="_blank"></a> <p>很多稀奇古怪的东西都是由于系统升级时,为了保持向下兼容而产生的,A20 Gate就是其中之一。 <br> </p> <p>在8086/8088 中,只有20根地址总线,所以可以访问的地址是2^20=1M,但由于8086/8088是16位地址模式,能够表示的地址范围是0-64K,所以为了在 8086/8088下能够访问1M内存,Intel采取了分段的模式:16位段基地址:16位偏移。其绝对地址计算方法为:16位基地址左移4位+16位 偏移=20位地址。</p> <p> </p> <p>但这种方式引起了新的问题,通过上述分段模式,能够表示的最 大内存为:FFFFh:FFFFh=FFFF0h+FFFFh=10FFEFh=1M+64K-16Bytes(1M多余出来的部分被称做高端内存区 HMA)。但8086/8088只有20位地址线,如果访问100000h~10FFEFh之间的内存,则必须有第21根地址线。所以当程序员给出超过 1M(100000H-10FFEFH)的地址时,系统并不认为其访问越界而产生异常,而是自动从重新0开始计算,也就是说系统计算实际地址的时候是按照 对1M求模的方式进行的,这种技术被称为wrap-around。</p> <p……
查看全文
发表于:2007-04-06 ┆
阅读(575)
┆
评论(0)
boot.asm汇编分拆
<br>obj/boot/boot.out: file format elf32-i386<br><br>Disassembly of section .text:<br><br>00007c00 <start>:<br>###################################################################################<br> <br>.globl start # Entry point <br>start: .code16 &……
查看全文
发表于:2007-04-06 ┆
阅读(750)
┆
评论(0)
Elf图形详解
<p><span lang="EN-US"> ______________<br> _ _ __/ \__ _ _<br> _ _ __ </span>介绍<span lang="EN-US"> __ _ _<br> \______________/<o:p></o:p></span></p> <p><span lang="EN-US"><br> ELF</span>文件结构是这样的:<span lang="EN-US"><o:p></o:p></span></p> <p><span lang="EN-US">+-------------------+<br> | ELF</span>文件头<span lang="EN-US"> |<br> | |<br> +-------------------+<br> | </span>程序头<span lang="EN-US"> |<br> | </span>(<span lang="EN-US">c0h</span>字节)<span lang="EN-US"> |<br> +----……
查看全文
发表于:2007-04-06 ┆
阅读(599)
┆
评论(0)
Elf文件格式
<table style="border-collapse: collapse;" bgcolor="#f1f1f1" border="1" bordercolor="#999999" cellpadding="0" cellspacing="0" width="95%"><tbody><tr><td><p style="margin: 5px; line-height: 150%;"><code><span style="color: rgb(0, 0, 0);"><br> <br> EXECUTABLE <span style="color: rgb(0, 0, 255);">AND</span> LINKABLE FORMAT <span style="color: rgb(0, 0, 204);">(</span>ELF<span style="color: rgb(0, 0, 204);">)</span> <br> <br> Portable Formats Specification<span style="color: rgb(0, 0, 204);">,</span> Version 1<span style="color: rgb(0, 0, 204);">.</span>1 <br> Tool Interface Standards <span style="color: rgb(0, 0, 204);">(</span>TIS<span style="color: rgb(0, 0, 204);">)</span> <br> <br> ________________________________________________________________ <br> <br> <br> <span style="color: rgb(0, 0, 204);">=</span><span style="color: rgb(0, 0, 204);">=</span><span style="color: rgb(0, 0, 204);">=</span><span style="color: rgb(0, 0, 204);">=</span><span style="color: rgb(0……
查看全文
发表于:2007-04-06 ┆
阅读(423)
┆
评论(0)
解读Elf文件
本文叙述如何解读ELF文件。 <br> <br>打开一个ELF文件解读时,我们首先遇到的是一个ELF文件头。ELF文件头 <br>给出解读整个ELF文件的路径图,它是一个固定的结构。文件头的结构在系统 <br>头文件elf.h中定义,如果是32位的二进制文件,它是一个Elf32_Ehdr <br>结构,如果是64位的二进制文件,则是一个Elf64_Ehdr结构。无论是何种 <br>结构,结构的第一个成员是一个16字节的e_ident,它给出了整个ELF文 <br>件的解读方式。究竟是32位的Elf32_Ehdr结构还是64位的Elf64_Ehdr <br>结构,就看……
查看全文
发表于:2007-04-04 ┆
阅读(489)
┆
评论(0)