自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

如烟海的专栏

BBE&BFE©

  • 博客(16)
  • 资源 (5)
  • 收藏
  • 关注

原创 过年了

过年了,长途拨涉,终于到家了,家里还是没有什么变化,但是心里却有一些伤感,因为每一年都代表着一个过去和一个开始,可是,总会有结束的那一天,不管是亲人的还是自己的。

2012-01-20 18:50:04 806

原创 保护模式跳回实模式的normal descriptor(续)

上一次转的文章(为什么保护模式跳回实模式要选择一个NormalSelectorhttp://blog.csdn.net/ruyanhai/article/details/7186970)中提到了描述符的高速缓存,但那篇文章说的不是很清楚,因此这里又总结了一下。 blog.csdn.net/ruyanhai众所周知,保护模式下,GDT存储在内存中,为了加快访问GDT中相关描述符的速度,x86

2012-01-17 16:07:34 1339

原创 bochs利用中断调试dos程序

本文主要内容:在bochs中运行dos程序,如何在程序的开始处中断使用bochs调试,如何在程序的任意位置下断点虽然在程序的入口处中断后,我们就可以随意使用bochs下断点了,但是毕竟不能像C/C++那么方便,使用函数名,或者文件名+行号就可以下断点,而是需要自己算偏移地址等。因此需要一种更加方便的下断点方法。 因为TD不能调试保护模式下的DOS程序,因此必须(或者是可

2012-01-13 22:35:46 2494

原创 ubuntu 11.10 x64编译安装bochs2.5.1

众所周知Apt-get安装的bochs是不带调试功能的,必须通过源码编译加上--enable-debugger才行。现在ubuntu源上的bochs版本是2.4.6,但是bochs网站已经发布了2.5.1(http://bochs.sourceforge.net/ ),因此我们直接编译安装bochs2.5.1。 编译源码从http://bochs.sourceforge.n

2012-01-12 20:23:21 2734

转载 为什么保护模式跳回实模式要选择一个NormalSelector

来自:http://blog.csdn.net/lancedegate/article/details/1558795段寄存器段基地址段界限(固定)存在性特权级已存取粒度扩展方向可读性可写性可执行堆栈大小一致特权CS当前CS*160000FFFFHY0YBUYYY-N

2012-01-09 12:48:36 1323

转载 磁盘的磁道(Track)

觉得写的特别好,就转过来了,原文链接:http://blog.csdn.net/badbad_boy/article/details/4313645写这篇文章,主要是为了解决长久以来的一个困惑。由此也可以看出偶以前确实不太聪明。 哈哈(虽然现在仍然还是)以前见到的很多磁道的示意图都是这样的:注意标线的位置,“指向一条线”,我当时的理解好像是这条线就是磁道。还有的解释是说磁道就是

2012-01-07 15:11:39 1811

原创 实模式跳转保护模式,代码全注释

最近正在阅读《orange's,一个操作系统的实现》,真是相见恨晚啊,那么多年就没有一本真正深入浅出弄点代码让我们入门和实践一下的书,感谢作者于渊。下面是第3章pmtest1.asm的全注释总结执行过程如下:初始化32位代码段的段基址,并存储到GDT中对应的描述符中准备GDT的基地址,并通过LGDT指令加载到GDTR寄存器中cli关中断打开地址线A20将CR0寄存器的PE位置1,进

2012-01-06 18:00:42 3053 2

原创 A20地址线

A20地址线并不是打开保护模式的关键,只是在保护模式下,不打开A20地址线,你将无法访问到所有的内存(具体参考下面的第5点)用于80286与8086兼容用于80286处于实模式下时,防止用户程序访问到100000h~10FFEFh之间的内存(高端内存)8086模式,A20关闭的情况下,访问超过1MB内存时,会自动回卷8086模式下,A20打开的情况下,访问超过1MB内存

2012-01-06 16:49:24 12051 9

原创 段界限为什么要减1

在orange's一个操作系统的实现,第3章,pmtest1.asm中,有如下代码    GdtPtr     dw GdtLen - 1  ; GDT界限我们知道一个描述符中包含段基址和段界限,那么如果GdtLen是GDT的长度,为什么段界限要-1呢?因为段界限表达的是段内的最大偏移,而不是段的最大长度。一个简单的例子,加入一个段有如下内存:var1 db

2012-01-06 15:22:31 3251 4

转载 为什么全局描述符表GDT的第0项总是一个空描述符

用于当一个任务使用的所有段都是系统全局段时。GDTR(48位)用于描述GDT的基址和界限LDTR(16位)用于描述当前任务的LDT在GDT中的选择子。如果一个任务没有LDT,就会把LDTR清空,此时指向GDT中的第0项描述符,即为空描述符。转自:http://apps.hi.baidu.com/share/detail/24570154 LESSON4:为什么全局描述符表GDT

2012-01-06 14:41:00 4573 4

原创 NASM中SECTION的概念

SECTION是一种组织代码和存储的方式NASM支持标准的.data, .text和.bss,编译后的程序文件中的内存地址顺序是.text, .data,用户自定义section。NASM支持用户自定义section同名的section,编译后会放在同一块连续的内存上[SECTION .data]var1    db    0x01[SECTION .text]

2012-01-06 00:06:08 9034 3

原创 NASM的ORG 0100h的实际含义

PSP程序段前缀要了解ORG 0100h,就必须先了解程序段前缀PSP(Program Segment Prefix) 程序段前缀是一个操作系统(DOS)概念。当输入一个外部命令或通过EXEC子功能(系统功能调用INT21h,子功能号为4Bh)加载一个程序时,COMMAND确定当前可用内存的最低端作为程序段的起点,也就是程序被加载到内存空间的起点。在程序所占用内存的前256(0100h

2012-01-05 13:32:04 19952 6

原创 ubuntu11.10应用

安装字体从WIN7拷贝字体到ubuntu,双击该字体,然后install即可。Ubuntu中文输入法dash->ibus,启动ibusdash->systemsetting->languagesupport ->keyboardinputmethodsystem->ibus,保证ibus开机自启动sudoapt-get

2012-01-04 23:42:16 1070

原创 ubuntu11.10,vmware上网配置

在公司,主机WIN7,双网卡,一个外网,一个内网。VMware 8.0虚拟机安装ubuntu11.10,需要配置上网。1. vmware使用NAT模式    因为我们需要让ubuntu直接走win7的外网网卡出去。2. ubuntu使用dhcp模式3. vmware NAT模式详细配置如下:DHCP Settings ...

2012-01-03 16:02:01 1954

原创 ubuntu11.10打开终端的方法汇总

打开终端的方式汇总windows键,输入terminal打开dash,输入terminalctrl+alt+tsudo apt-get install nautilus-open-terminal,安装完成,注销以后再回来,就可以右键打开terminal了。

2012-01-03 13:53:37 2791 2

转载 ubuntu11.10 xdmcp连接

Enable XDMCP on Ubuntu 11.10root@blackbox:~# cp /etc/lightdm/lightdm.conf /etc/lightdm/lightdm.conf.$(date -I)root@blackbox:~# cat /etc/lightdm/lightdm.conf[SeatDefaults]greeter-session=unity-gr

2012-01-03 13:45:14 1682

perl正则表达式学习手册

perl的正则表达式,总结的一个小手册,用着还是挺方便的。

2012-01-05

Oracle ODBC driver

从ORACLE网站上下载的,包括9i和10g,我还没装过 地址是:http://www.oracle.com/technology/software/tech/windows/odbc/htdocs/utilsoft.html Oracle ODBC Driver Downloads NOTE: The following ODBC Drivers are ODBC Version 3.52, Level 2 compatible drivers. Oracle ODBC Drivers for Oracle 10.2 Version Date Download Size Bullet 10.2.0.3.0 12-Dec-2006 ORA10203.exe 348,160 bytes New Bullet 10.2.0.2.0 08-Sep-2006 ORA10202.exe 2,351,104 bytes Oracle ODBC Drivers for Oracle 10.1 Version Date Download Size Bullet 10.1.0.5.0 25-Apr-2006 ORA10105.exe 2,232,320 bytes Oracle ODBC Drivers for Oracle 9.2.0 Version Date Download Size Bullet 9.2.0.8.0 20-Dec-2006 ORA9208.exe 286,720 bytes Oracle ODBC Drivers for Oracle 9.0.1 Version Date Download Size Bullet 9.0.1.8.0 28-Jan-2004 ora9018.exe 1.40 MB

2008-12-19

GNU C手册完美版

这个是GNU C 2.6版的,目前最新版是2.7。PDF和TXT的手册可以在http://www.gnu.org/software/libc/下载,但不如CHM来的方便和快捷。

2008-07-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除