标题: 郭恒兄,请教一些问题
[打印本页]
作者: stamp
时间: 2005-2-25 00:00
标题: 郭恒兄,请教一些问题
有一个小小的问题,WinSail中对磁盘的读写是做在库里了,还是没有(好像是在库里),这时读一个不存在的磁盘会出现dos的告警信息,返回后桌面没有刷新,如果abort就会退出程序,我是XP下试的,不知道在dos下会不会。
--------------------------------------------------------------------------------------------------------
另外想问郭恒兄一个问题。你的系统内核关于线程的调度是通过时间中断来实现的吗?那如果要做大量工作时候,比如说既作为文件传输服务器,又作为即时消息处理(两台主机间的消息处理),以及响应用户操作,又要对对外部系统的监测(这些调度对时间要求比较精确)时,你的调度是怎么实现的。
我以前是做成有一个注册服务的形式,某一个服务要提供,在启动时先注册(我的程序比较简单,没有实现注册表之类的功能),而在得到事件函数(如键盘消息)中循环调用,这样来解决探出对话框时对他的处理,保证他们的执行。
不知道郭恒兄怎样处理,可否指点一下?
还有关于鼠标事件的处理,是否有比较简便的方法探测鼠标按下时某一个窗体得到事件,比如在多个窗口的情况下,我以前是一次仅允许探出一个窗口,再多窗口下鼠标事件如何处理简单,有一次我看了一篇介绍建立重叠窗口的文章,是一篇介绍linux下实现桌面系统的文章,太复杂了(用窗口切割,三维坐标等方法),在dos上实现起来是在复杂。不知郭兄是怎么实现的?
作者: 郭恒
时间: 2005-2-26 00:00
1:WinSail是基于DOS技术之上的"实模式"下的工控开发平台,支持8086~奔腾CPU。
Build On Dos Technoligy!2:WinSail工作在单任务中,WinSail没有挂接任何中断;
WinSail工作在自己的多任务管理器中时,WinSail只挂接了INT8。3:WinSail的“多任务”模块和“网络”模块是可以剥离的,即您可以挂
接第三方的多任务模块-如UC/OS 和 第三方的网络模块-如WATTCP。4:对于文件服务器,建议采用“Windows”系统或“UNIX”系统,基于DOS技术
是不实际的,因为WinSail开发的目的是用于工业测控用途。5:由于DOS只有640K常规内存,并且“栈”也最大只有64K字节,故在WinSail中窗
口是不能切换的,相当于WINDOWS中的“Dialog”,WinSail内部有一个没有公开的
窗口管理器函数,它就能支持窗口切换。但在“测控”实际应用中,窗口切换只
有学术上的用处。6:WinSail在16色下,画图函数与C函数库的图形函数是共存的。7:WinSail是基于C++语法,提供的API接口70%是“类”接口,30%是C函数接口。 它是一个面向"工业控制"应用的开发平台,运行在"实模式"中,主要架构为: | |----BC31(DOS平台)
|---编程平台--|----BC45(Win9x平台)
|
| |---8086
|------CPU----|---80186
| |---80286/80386/80486/...
|
| |-----80x87
|---浮点运算--|-----浮点仿真
|
| |-----WinSail的TCP/IP管理器
|------网络---|-----第三方网络管理器(如Wattcp)
|
| |-----WinSail的多任务管理器
WinSail--|----多任务---|-----第三方多任务管理器(如UCOS、ERTOS)
|
| |-----COMM口->目标机
|---远程控制--|-----网卡->目标机
|
| |-----常规内存
|------内存---|-----扩展内存----|-实际扩展内存
| | |-磁盘仿真
|
| |-----VGA(单色/彩色)
| |-----SVGA(单色/彩色)
| | | ----- SED1335控制器
|----图形接口-|-----LCD---|----- T6963控制器
| | |----- ......
| | | ---- 其它(单色/彩色)
|
| |---- 本地I/O
| |---- COM口 -> 目标机
|---面向对象I/O --|---- 网卡 -> 目标机
| | ---- PLC
| |------物理键盘
|---键盘------|------I/O映射
| |------虚拟物理键盘(可在只有触摸屏没有键盘的场合)
|---其它
作者: boblhh9999
时间: 2005-3-18 00:00
再问郭恒兄:
如果未连打印机。而送打印,在我的图形界面下会出现讨厌的DOS错误提示,十有八九得按“abort”退出,我想如何自己拦截错误中断,做一个类是WINDOWS的对话框,允许用户重试,或按“取消”结束打印但不退出程序。
困扰了我很长的时间未解决,请郭恒兄不吝赐教
[em07]
哦哦,没人理啊,自己再顶一下,
[此贴子已经被作者于2005-3-21 13:32:57编辑过]