作者leicheong (睡魔)
看板CSSE
标题Re: 以前问过的问题...OS
时间Thu Jul 21 23:18:28 2005
※ 引述《ikjhyu (还没想到)》之铭言:
: 请问各位高手...
: 小弟不太清楚现在的windows系统究竟跟dos有没有什麽关连...
: 早期的windows系统(如windows3.1)听说是架构在dos上的
: 个人对这句话的理解是, windows3.1应该是类似一种dos下的套装应用程式
: 如lotus,PE2之类的,当然windows3.1的复杂度比较高一点
大致上正确. 不过我会认为用DOS 4/5的DOSSHELL程序, 及Norton Utilites
for DOS 6/7/8的BE(Batch Enhanced)作比较会比较合适.
Windows 3.1是DOS的功能的Extender吧.
: 架构在 dos之上意指 开机时会载入dos作业系统的核心(所以是使用dos的作业系统)
: 然後载入windows3.1系统 , 然後再辅助user去使用其他的套装软体或功能
正确. 不过当时Windows的最重要意义还是多工工作环境
(cooperative multitasking)和图形使用者介面(GUI)吧.
: 而到了windows95之後乃至现在的XP,据说是可以算是一个真正的OS了
: 不知道这个是要怎麽解释或者理解..?
Win3.1时代的infrastructure/API function多是建基於MSDOS.SYS
中的INT 21H(DOS function)中断服务.
Win95开始Windows内建的VXD已经可以处理主要功能, 不须要依赖
INT 21H. 同时很多INT 21H的中断服务(由其是AH=80H以上的)都被
导向到Windows的VXD了.
: 另外,好像常看到一个名词:
: "instance" 实体, 请问实体的意思是不是
: 假如工作列上开了n个word视窗,就是执行了同一个程式(MS word) n次
: 每个视窗都叫做一个instance ?
: 或者说这种同一个程式开多个视窗执行的功能 叫做"多执行绪"?
不是.
PE格式的程式执行时会需要进行Register Class的动作. 完成之後的
状态会被称为产生了一个instance(在Win3.1时重复执行程式的话,
reg. class时会返回上一次reg. class时的hInstance值哦). 请
留意这里不论class和instance的定义都和平常学OO时说的不同.
不要搅混了.
之後就可以进行Create Window的动作. 一个程式在系统资源容许下可以
产上任意数量的window(留意任何window control如textbox, button,
combobox, listbox等都是window). 每一个非child的window背後都
会有一个winproc(可以说也就是一个process)去处理message.
不过不是每一个process都有window的. Windows service中的process
就是一个明显的例子.
大致上就是这样, 不过真的要说清楚的话是会很长的. 自己找书看吧.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.77.145.43