DOS编程技术
TFTJT
这个作者很懒,什么都没留下…
展开
-
在 DOS 下实现多线程
<br />在 DOS 下实现多线程<br /> 程序在 Turbo C 3.0 下调试通过,采用了最简单的时间片轮转法,实现了多线程的系统,程序尽量采用了最简洁的技术来实现多任务的系统,主要使用到了C标准库中的setjmp和longjmp两个函数,程序绝大部分都是采用C/C++语言书写,但是仍然不可避免的采用了三句内嵌汇编,来进行线程堆栈的切换。由于DOS下的系统调用,都是不可重入的.如果在多个线程中同时调用了DOS的系统调用,就会出现死机等问题。一般可以使用信号量来解决DOS重入问题。整个系统原创 2010-12-17 10:46:00 · 4687 阅读 · 3 评论 -
使用XMS扩展内存编程实例
粗略地讲,扩展内存和扩充内存在物理上都是指高内存区,只是由于管理程序的不同而给予不同的称呼,二者分别代表了两种不同的管理规范:EMS和XMS。它们以不同的方式提供了使用高内存的操作。二者都是在系统启动时加载驱动程序而控制高内存的,并为用户提供功能调用。原创 2010-11-04 13:47:00 · 1600 阅读 · 0 评论 -
C++中利用代理类使数组拥有简单的边界检测实例
多维数组在C++中的有用程序和其它语言相同,所以找到一个像样的去持方法是很重要的。常用方法是C++中的标准方法:用一个类来实现我们所需要的C++语言中并没有提供的东西。这里用定义类模板来实现。 一维,二维,三维分别定义一个类模板。原创 2010-11-05 09:47:00 · 1132 阅读 · 0 评论 -
Bochs使用笔记(Bochs虚拟机下安装DOS 6.22)
Bochs使用笔记(Bochs虚拟机下安装DOS 6.22) 1.下载Bochs. 到官方网站http://bochs.sourceforge.net/下载一个最新版Current Release:Bochs 2.4.52.安装Bochs. 安装很简单,打开 Bochs-2.4.5.exe后,同意协议等什么的一路next.最后会让你看一个列表文件和ReadMe文件。 安装完后,在开始菜单里打开Bochs 2.4.5.跳出一个窗口Bochs Start Menu.用于虚拟机的参数设置等等原创 2010-11-10 14:04:00 · 9036 阅读 · 2 评论 -
内存模式
<br /> 内存模式的出现不是由编译器决定的,而是由处理器的寻址方式决定的,在8086处理器中为了在16位寄存器的基础上寻址20位的地址,引入了段寄存器和分段寻址的方式。在编译器这一级,利用这种段式的寻址方式,可以实现多种不同的存储分配方法,因此就产生了所谓的不同的内存模式。<br /> 1. tiny模式: 程序和数据在一个64K字节的段内<br /> 2. small模式: 独立的代码段(64KB)和独立的数据段(64KB)<br /> 3. medium模式: 单个数转载 2010-11-12 12:39:00 · 1345 阅读 · 0 评论