当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 首先我要申明的是我并不是个OS专家,关于OS的研究仅仅是出于自己
 

 

    摘要:openssl之asn.1系列之2---asn.1编码方法简介 ---根据openssl源代码、ssleay documents以及其它相关材料写成 作者:dragonking(eric wang) mail: wzhah@263.net 版权声明:未经作者授权,本文不能在任何商业性质的出版物或网站上进行转载 发布网站:http://openssl.126.com openssl版本:openss......
 ·如何应用session开发非web终端    »显示摘要«
    摘要: 如何应用session开发非web终端......


关于16位的OS尝试(1)

首先我要申明的是我并不是个os专家,关于os的研究仅仅是出于自己的兴趣.

但是我认为仅仅是为了自己,也应该把这段时间自己在写os的经验写出来. 【程序编程相关:中小企业服务器配置方案(IP伪装)

【推荐阅读:中小企业服务器配置方案(文件服务器之NF

首先要找到一张1.44mb的软盘.我的os就是写到软盘上的.当然你也可以写到硬盘上,不过你得要有两个或更多的硬盘才行.否则硬盘数据被破坏,计算机就无法启动了.在这里我还得提到我曾经做的一件傻事.由于我的电脑上没有软驱,只有个usb移动硬盘,所以我拿usb盘来代替软盘.后来写上去的程序无论如何都有问题.经过一步一步细致测试,才发现原来的是usb盘根本不能用bios 13h来读.因为usb盘不是磁盘,居然我当时来拿它作磁盘来读写.现在想起来真是可笑. 【扩展信息:WinCE线程和内存管理之内存管理

我第一次做的这个os是个16为实式模式下的os.因为它比起保护模式要简单,而且容易上手.

我首先写的是boot loader,就是软盘上第一个扇区的程序.计算机启动的时候就会自动把这个程序放到0x0000:0x7c00(似乎是这样)去执行.但是只有一个扇区,你不可能把你的整个os都放到这一个扇区里面.一个扇区才512字节.不过我可以通过这个扇区上的程序,把软盘上其它部分的数据调出来运行.所以老外叫它boot loader(引导装载程序).

关于这个boot loader是很简单的.特别是对于我要做的16位实式模式下的os来说,几乎没有什么要求,你想怎么做就怎么做了.但是如果你要做保护模式下的os,就需要设计到很多比如"a20开起"等麻烦的事情.现在网上到处都有关于os编写的介绍,但是大多都是停留在这个boot loader的讲解中,而且绝大部分还都是讲解16位实式模式下的boot loader.比如到www.google.com去搜索一下"write your own operating system",可以找到好多这样的文章.当然,这些主要的都是英文的.看看也不错.国外的这些网站大多都是讲如何上手,将一些很实际的东西,而且都是不错.比如我知道的一个网站http://osdev.neopages.net/index.php,就是个很不错的.它关于os的介绍可不是简单地停留在boot loader上哦.而且里面还有我们写os需要的一切工具,与资料收集.

我喜欢的老师上课最爱讲费话,或许我也汲取了他的优点,讲了上面这么大段的费话,下面我就开始真正写我的boot loader了.

boot loader似乎只能用汇编写.而最好的汇编编译器是nasm.我开始写boot loader的时候,几乎100%的人都说应该使用nasm来作汇编编译器.或许是因为nasm是公开源代码的吧,也或许nasm支持很多格式的生成文件,所以这个东西向来是汇编高手们推荐的汇编编译器.这个东西你可以在http://sourceforge.net/找到下载的,连它的源代码都可以找得到呢.不过http://osdev.neopages.net/index.php里面也是提供了的.现在用了段时间nasm,我也确实觉得它是个好东西.而且关于它的文档也是很齐备的,查询很方便.

好,这就是我的boot loader的程序

;----------------------------------------------------------------------

; hello world operating system boot sector00 program

;

; tangl_99 2003


...   下一页
 ·英语吵架百句    »显示摘要«
    摘要:英语吵架百句 作者:劳尔(xxx.xxx.xxx.xxx) 2002/08/02 08:53 当前论坛: 幽默天地 [humorous.xilubbs.com] 互换联接:http://yaxlik214.xilubbs.com 1. stop complaining! 别发牢骚! 2. you make me sick! 你真让我恶心! 3. what’s wrong with you? 你......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE