如何在dos下编写多线程?

yesry 2005-02-22 12:57:15
线程的执行与否、继续执行、中断等状态(术语是:挂起,运行,就绪,中断等等)可以调度,每个线程的执行时间可以调节。

或者告诉我linux下pthread相关源代码的位置及其相关struct,subrutine也可。
...全文
1267 72 打赏 收藏 转发到动态 举报
写回复
用AI写文章
72 条回复
切换为时间正序
请发表友善的回复…
发表回复
icansaymyabc 2005-06-28
  • 打赏
  • 举报
回复
支持楼主,批评楼上那些泼冷水的。楼主说得一点没错--计算机在我手里,还有什么做不成的?

举个例子,Windows 1.0 到 Windows 3.2,实质上就是16位 DOS 应用程序。人家不仅实现了多进程多线程,而且Windows 3.2提供的“系统调用”和 95/98/nt下的系统调用基本一致。

楼主别灰心,看看操作系统原理,即使在DOS下,你同样做得到,只不过你需要自己多做点事罢了。其实原理很简单:设置时钟中断(你自己决定时间片大小,windows3.2的时间片是20毫秒),每次时钟中断时你自己的程序来决定执行那些程序片断。只是要注意,你的这些程序片断决不能调用DOS中断,因为dos是不可重入的,也就是说,你必须先写出你需要用到的所有功能的可重入的中断服务程序来替换DOS的中断。
11308narnar 2005-06-28
  • 打赏
  • 举报
回复
multi thread 需要操作系统的支持。
  • 打赏
  • 举报
回复
Windows 3.2,实质上就是16位 DOS 应用程序。
=========================================
Win 3.x的VMM是32位的,设备驱动VxDs也是32位的。
只是普通应用程序是16-bit的,但是是运行在16-bit保护模式。
一个程序理论上可以有16384个64K的段。
要不那时候怎么能有在Win 3.x上跑的oracle和Infomix?
aprccherry 2005-06-27
  • 打赏
  • 举报
回复
to yesry(噎死你) :
这位大哥,你现在的问题解决了么?请问是用你贴出来的办法解决的么???

我现在也遇到相同的问题了。。。。
scriptren 2005-06-27
  • 打赏
  • 举报
回复
不知道
yesry 2005-06-27
  • 打赏
  • 举报
回复
to aprccherry(jiangjiang)

是在vc下通过的。原理是在堆栈中修改既定的返回地址,使返回的时候返回到别的线程中,实现cpu线呈分配。
brianlu 2005-06-27
  • 打赏
  • 举报
回复
up
dove01 2005-06-27
  • 打赏
  • 举报
回复
回复人: happy__888([顾问团]寻开心) ( ) 信誉:100
楼上正解~~~用TSR驻留程序
zjxiaoyu 2005-06-27
  • 打赏
  • 举报
回复
可以自己把一套多线程的os移植到dos上。
比如ucOS。
Jiessie 2005-06-27
  • 打赏
  • 举报
回复
我记得96年的计算机报有一篇文章讲的这个,如果楼主真要做,应该很容易的,自少可以模拟的很像。。。
netty 2005-06-27
  • 打赏
  • 举报
回复
mark
xiaosong8584 2005-05-01
  • 打赏
  • 举报
回复
路过留名
cppprogramlover 2005-05-01
  • 打赏
  • 举报
回复
修改中断向量,然后~~~
太无聊了
其实还不如去写一个文件系统,更爽
iamwindywolf 2005-04-27
  • 打赏
  • 举报
回复
不通过系统接口,自己写一个类似的fork?你有这个本身自然可以。
yesry 2005-04-27
  • 打赏
  • 举报
回复
up
tianlon 2005-04-27
  • 打赏
  • 举报
回复
嵌入式用linux的好像要多些
gogowhy 2005-04-27
  • 打赏
  • 举报
回复
mark
linyudie 2005-04-27
  • 打赏
  • 举报
回复
自己用中斷切換,dos下本來就是一個地址空間,多任務也就相當於多綫程了,想多進程的話會更加慘~~
bzCpp 2005-04-27
  • 打赏
  • 举报
回复
可以用TRS实现多任务,多线程没法实现
大狼尾巴 2005-04-27
  • 打赏
  • 举报
回复
用中断
加载更多回复(52)

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧