- 博客(55)
- 资源 (5)
- 收藏
- 关注
原创 Doxygen按原始注释输出(保留空格和换行)
在Doxygen注释中,我们经常需要用空格加上符号来描述一种结构图,但是因为Doxygen默认忽略空格和换行,因此导致输出的结果不是我们想要的。假定我们想输出如下的注释: /** * JOIN (exists (select 1 from x3 where x1.id3 = x3.id3) *
2012-11-02 13:03:06 8183
原创 过年了
过年了,长途拨涉,终于到家了,家里还是没有什么变化,但是心里却有一些伤感,因为每一年都代表着一个过去和一个开始,可是,总会有结束的那一天,不管是亲人的还是自己的。
2012-01-20 18:50:04 816
原创 保护模式跳回实模式的normal descriptor(续)
上一次转的文章(为什么保护模式跳回实模式要选择一个NormalSelectorhttp://blog.csdn.net/ruyanhai/article/details/7186970)中提到了描述符的高速缓存,但那篇文章说的不是很清楚,因此这里又总结了一下。 blog.csdn.net/ruyanhai众所周知,保护模式下,GDT存储在内存中,为了加快访问GDT中相关描述符的速度,x86
2012-01-17 16:07:34 1350
原创 bochs利用中断调试dos程序
本文主要内容:在bochs中运行dos程序,如何在程序的开始处中断使用bochs调试,如何在程序的任意位置下断点虽然在程序的入口处中断后,我们就可以随意使用bochs下断点了,但是毕竟不能像C/C++那么方便,使用函数名,或者文件名+行号就可以下断点,而是需要自己算偏移地址等。因此需要一种更加方便的下断点方法。 因为TD不能调试保护模式下的DOS程序,因此必须(或者是可
2012-01-13 22:35:46 2510
原创 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 2749
转载 为什么保护模式跳回实模式要选择一个NormalSelector
来自:http://blog.csdn.net/lancedegate/article/details/1558795段寄存器段基地址段界限(固定)存在性特权级已存取粒度扩展方向可读性可写性可执行堆栈大小一致特权CS当前CS*160000FFFFHY0YBUYYY-N
2012-01-09 12:48:36 1335
转载 磁盘的磁道(Track)
觉得写的特别好,就转过来了,原文链接:http://blog.csdn.net/badbad_boy/article/details/4313645写这篇文章,主要是为了解决长久以来的一个困惑。由此也可以看出偶以前确实不太聪明。 哈哈(虽然现在仍然还是)以前见到的很多磁道的示意图都是这样的:注意标线的位置,“指向一条线”,我当时的理解好像是这条线就是磁道。还有的解释是说磁道就是
2012-01-07 15:11:39 1820
原创 实模式跳转保护模式,代码全注释
最近正在阅读《orange's,一个操作系统的实现》,真是相见恨晚啊,那么多年就没有一本真正深入浅出弄点代码让我们入门和实践一下的书,感谢作者于渊。下面是第3章pmtest1.asm的全注释总结执行过程如下:初始化32位代码段的段基址,并存储到GDT中对应的描述符中准备GDT的基地址,并通过LGDT指令加载到GDTR寄存器中cli关中断打开地址线A20将CR0寄存器的PE位置1,进
2012-01-06 18:00:42 3065 2
原创 A20地址线
A20地址线并不是打开保护模式的关键,只是在保护模式下,不打开A20地址线,你将无法访问到所有的内存(具体参考下面的第5点)用于80286与8086兼容用于80286处于实模式下时,防止用户程序访问到100000h~10FFEFh之间的内存(高端内存)8086模式,A20关闭的情况下,访问超过1MB内存时,会自动回卷8086模式下,A20打开的情况下,访问超过1MB内存
2012-01-06 16:49:24 12096 9
原创 段界限为什么要减1
在orange's一个操作系统的实现,第3章,pmtest1.asm中,有如下代码 GdtPtr dw GdtLen - 1 ; GDT界限我们知道一个描述符中包含段基址和段界限,那么如果GdtLen是GDT的长度,为什么段界限要-1呢?因为段界限表达的是段内的最大偏移,而不是段的最大长度。一个简单的例子,加入一个段有如下内存:var1 db
2012-01-06 15:22:31 3264 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 4586 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 9055 3
原创 NASM的ORG 0100h的实际含义
PSP程序段前缀要了解ORG 0100h,就必须先了解程序段前缀PSP(Program Segment Prefix) 程序段前缀是一个操作系统(DOS)概念。当输入一个外部命令或通过EXEC子功能(系统功能调用INT21h,子功能号为4Bh)加载一个程序时,COMMAND确定当前可用内存的最低端作为程序段的起点,也就是程序被加载到内存空间的起点。在程序所占用内存的前256(0100h
2012-01-05 13:32:04 20087 6
原创 ubuntu11.10应用
安装字体从WIN7拷贝字体到ubuntu,双击该字体,然后install即可。Ubuntu中文输入法dash->ibus,启动ibusdash->systemsetting->languagesupport ->keyboardinputmethodsystem->ibus,保证ibus开机自启动sudoapt-get
2012-01-04 23:42:16 1078
原创 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 1964
原创 ubuntu11.10打开终端的方法汇总
打开终端的方式汇总windows键,输入terminal打开dash,输入terminalctrl+alt+tsudo apt-get install nautilus-open-terminal,安装完成,注销以后再回来,就可以右键打开terminal了。
2012-01-03 13:53:37 2808 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 1691
原创 bochs安装freedos,以及host、guest拷贝文件
bochs安装freedos,以及host和guest系统拷贝文件下载freedos镜像(freedos.iso)安装bochs(2.4.5)建立磁盘映像bximage –q–hd–mode=flat–size=200Mfreedos.img 编辑bochs配置文件bochs的sample文件在/user/share/doc/bochs/sample目录下
2011-12-24 17:39:52 2711
转载 Ubuntu配置ADSL[转]
我们使用终端来配置调制解调器。通过菜单上的应用程序>附件>终端来打开终端。 你需要安装PPPoE包来使用以下的命令。这个包是默认安装的,但是有可能在更改配置的时候丢失。如果以下的命令不能执行,你需要再安装这个包(请参考PPPoE包安装的章节)。 在终端中输入: sudo pppoeconf一个基于文本菜单的程序会指导你进行下面的步骤: 确认以太网卡已被检测到。 输入你的用户名(由ISP所提供)。 输入你的密码(由ISP所提供)。 如果你已经配置了一个PPPoE的连接,会通知你
2010-11-25 07:38:00 872
原创 Ubuntu用crossover安装office
Ubuntu使用crossover linux安装office2003,SETUP.INI找不到到问题
2010-11-23 11:37:00 3553
原创 tsclient支持xdmcp和vnc
Ubuntu到tsclient默认没有安装XDMCP和VNC协议,这篇文章描述怎么让tsclient支持xdmcp和vnc。
2010-11-21 21:13:00 2113
原创 ld script格式
<br /><br />SECTIONS<br />{<br /> . = 0x7c00;<br /> .text :<br /> { <br /> _ftext = . ; <br /> } = 0 <br />}<br /> <br />.和=之间要有空格,否则报语法错误。
2010-11-18 14:42:00 897
转载 (转)问支持范跑跑的人十个问题
本来只想在我这里发表一些技术性的文章,但这次实在忍不住了。现在范跑跑很嚣张,而几次看视频他跟别人对质,对方都很逊,让他一个人在那里高谈阔论。平时那些雄辩的仁兄们,你们都到那里去了?我个人主张,范跑跑,你跑没有错。你可以选择保留自己的生命。但你不可以事后宣扬,尤其是那些支持范跑跑的人,因为你们在侮辱那些废墟里的英雄。有人说的好,“母亲”、“女儿”本就是两难的选择,可以做出选择就是可笑、愚蠢之极!
2008-06-13 19:12:00 1390
原创 Java中,父类和子类的构造顺序和时机
下面是一个完整的测试类:/** * @(#)TestJava.java 2008-2-22 * * Copyright 2007 GeneralData, Inc. All rights reserved. */package com.bbebfe;/** * 这个类测试父类和子类的构造时机 * 父类中有一个(抽象)方法prt(); * 子类(实现)覆盖了这个方法,并打印"in chil
2008-02-29 11:51:00 1546
翻译 FAQ: 我该如何使用模型调解器(model reconciler)
Eclipse官方FAQ翻译系列FAQ How do I use a model reconciler? original link :http://wiki.eclipse.org/FAQ_How_do_I_use_a_model_reconciler%3F功能强大的文本编辑器,比如那些程序语言或WEB开发的编辑器,通常在底层都有一个对应于编辑器显示的元素的模型(model)
2008-02-29 11:20:00 1112
翻译 FAQ: 我怎么保证我的模型是可伸缩的?
Eclipse官方FAQ翻译系列FAQ How can I ensure that my model is scalable?original link : http://wiki.eclipse.org/FAQ_How_can_I_ensure_that_my_model_is_scalable%3F 由于eScript程序被假定是很小的,我们并没有太
2008-02-28 17:44:00 1007
原创 怎么删除Table的某个列(TableColumn)
有时候,我们需要在运行时动态调整Table的结构,比如增加或者删除某个列,当我们需要删除某个列时,可以调用Table.getColumns枚举所有的TableColumn,然后调用需要删除的TableColumn的dispose方法达到目的。当你需要插入一个列,可以参考Table.setColumnOrder()方法。
2008-02-28 14:51:00 4726 1
翻译 FAQ:What support is there for creating custom text editors?
Eclipse官方FAQ翻译系列Eclipse中有什么是支持自定义文本编辑器的?原始链接:http://wiki.eclipse.org/FAQ_What_support_is_there_for_creating_custom_text_editors%3FEclipse为创建象程序语言编辑器和文档编辑器这类文本编辑器提供了丰富的支持。而文本编辑框架被设计为多层,以增加与Eclips
2008-02-27 17:31:00 1078
翻译 FAQ:我还是搞不懂,编辑器的各个部分是怎么组合在一起的。
Eclipse官方FAQ翻译系列● FAQ Im still confused! How do all the editor pieces fit together?原文地址:http://wiki.eclipse.org/FAQ_I%27m_still_confused%21_How_do_all_the_editor_pieces_fit_together%3F译者注:我把Pre
2008-02-27 16:39:00 1078
翻译 FAQ:What is a document partition?(什么是文档的分区)
Eclipse官方FAQ翻译系列原始文档地址:http://wiki.eclipse.org/FAQ_What_is_a_document_partition%3F 每个document被分割为一个或多个非重叠的partition,文本框架(text-framework)的大部分功能可以被配置成对不同的partition提供独立的操作。因此,一个编辑器在不同的partition中可以拥有不
2008-02-26 16:32:00 1497
原创 写一个你自己的编辑器 - 第2章:语法着色(上)
·1 目的 无论是Visual stuio还是Eclipse等众多IDE,映入我们眼帘最直观的就是各种语法着色,关键字如“int”,字符串如"ddd",注释如“com.bbe”。 今天我们学习如何让你的编辑器支持语法着色。 ·2 定义 我们首先从思想上定义哪些输入串将被语法着色,以及它们的颜色和字体类型,我们有如下三种模式将被语法着色:Ø
2008-02-26 14:54:00 4524 4
原创 写一个你自己的编辑器 - 第1章:前言
软件开发人员离不开IDE,而IDE的核心之一就是编辑器环境,这些编辑器提供代码着色(语法着色),自动提示,代码格式化等众多功能,大大的提高了我们的工作效率。 那么你是否也想拥有一个自定义的编辑器?它提供代码着色、代码提示、格式化,代码折叠等众多功能。看到这里,也许你已经开始退缩,这些似乎都是专业IDE公司才具有的能力,怎么可能轻易实现。 是的,要开发一个功能完善
2008-02-26 12:49:00 2910 1
原创 Eclipse插件(Plugin)开发中的NoClassDefFoundError的解决(2)
开发一个SQL的编辑器插件,扩展名为sql,但运行后,用file -> open file...打开test.sql文件,Activator能够构造,但编辑器打不开,添加调试信息,发现ZSqlEditor类根本没有构造。也没有任何错误信息提示。因此判断错误发生在系统加载插件类的过程中(Eclipse用Java反射从磁盘动态加载插件的类文件)。打开runtime workbench下的.log文
2008-02-25 13:14:00 3290
原创 Eclipse插件开发中对于Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)
目的:Eclipse插件开发中,经常要引用第三方包或者是引用其他插件中的类,由于插件开发环境引用类路径的设置和运行平台引用类路径的设置不同,经常导致开发过程OK,一旦运行则出现NoClassDefFoundError的问题。本文的目的是全面分析各种情况下类路径的设置,以避免这个问题的出现。 说明:Jar包和类路径实际上是一个概念,比如类com.bbebfe.Test.class打包为tes
2008-02-25 13:11:00 12921 3
原创 让你的SWT程序运行起来
这篇文章是对勇敢的心的问题的回复而总结的。有时候,我们会发现在Eclipse中org.eclipse.swt包无法解析,这个问题在最初的时候也困扰了我很久。尤其是进入Eclipse3.3后,发现没有了Eclipse3.2的SWT Application运行选项后。引发这个问题的主要原因是插件引用没有设置好。 ● 如果安装SWT Designer后直接建立designer的SWT/JFace J
2007-11-13 15:31:00 3378
原创 让subclipse显示英文
即使Eclipse没有安装中文包,subclipse装在我们的Eclipse上时,仍然显示的是中文,因为它根据不同的地域使用了不同的properties文件。虽然中文很亲切,但subclipse上的中文实在让人不敢恭维,所以还不如英文看着舒服。方法很简单,用Winrar打开Eclipse/plugins/下的org.tigris.subversion.subclipse.ui_*.jar和
2007-11-13 14:21:00 2464 4
原创 SVN的安装和配置(Windows)
什么是SVN就不介绍了,网上的文章多的是,基本上是CVS的增强版。这里主要介绍一下SVN的安装和配置1.下载和安装· 下载SVN服务器端在http://subclipse.tigris.org/上下载SVN服务器端,我下载的是svn-win32-1.4.5.zip,直接解压缩后就可以用了(把 */svn-win32-1.4.5/bin目录添加到系统环境变量的path中,方便以后的使用)
2007-11-13 12:33:00 1502
Oracle ODBC driver
2008-12-19
GNU C手册完美版
2008-07-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人