Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account


Photo

Is Win-9x/me a "DPMI-based DOS extender" ?

- - - - -

  • This topic is locked This topic is locked
5 replies to this topic

#1
Nomen

Nomen

    Member

  • Member
  • PipPip
  • 191 posts
  • OS:98SE
  • Country: Country Flag
Would it be correct (or incorrect) to say that the win-9x/me kernel is a DPMI-based DOS extender - with the addition of a pre-emptive task scheduler?

Is it true (or false) that most device I/O that happens in 9x/me does so using real-mode via the "underlying" DOS?

Is it true (or false) that 60% (or some similar large percentage) of all code execution in 9x/me is done in real mode?

Does KernelEx make use of ring-3 in order to emulate or allow NT-based code to run (if so, is the use of ring-3 necessary for KernelEx to do it's job?)


How to remove advertisement from MSFN

#2
rloew

rloew

    MSFN Expert

  • Member
  • PipPipPipPipPipPip
  • 1,091 posts
  • OS:98SE
  • Country: Country Flag
No.
No.
No.
Yes. KernelEx hooks into KERNEL32.DLL which operates in Ring 3. WDMEX and WDMSTUB hook into NTKERN which operates in Ring 0.
Ye who enter my domain. Beware! Lest you become educated in the mysteries of the universe and suffer forever from the desire to know more.

#3
Nomen

Nomen

    Member

  • Member
  • PipPip
  • 191 posts
  • OS:98SE
  • Country: Country Flag
Most of these questions and issues seems to hint at win-9x/me being little different than win-3.x in terms of what role DOS plays in the structural configuration, operation or functionality once windows has booted and is up and running. I'd like to explore the following points and get answers as to:

- DOS, as it exists during the boot process in system RAM, is not cleared away during the transition of the CPU from real to protected mode. What significance this has to the dependency of Win-9x/me on DOS is not clear.

- As has been mentioned before, some say that the 9x/me kernel is nothing more than a DPMI-based DOS extender with a preeptive task scheduler. From a technical POV, why is this not true?

What would be the basis of claiming that:

- for a large percentage (> 50%) of CPU time, the CPU is running in real-mode, and that this applies (equally?) to win-3.x/9x/me. Under 9x/me, can/does the CPU really switch between protected and real mode? Why would it need to do that?

- Some say that Win 3.1/3.11/9x/me offered direct 32-bit access for a limited subset of I/O operations (filesystem/swapping), but practically ALL of the other I/O operations were still happening via DOS-style real mode access and legacy bios calls. There was no protected mode abstraction layer for the underlying hardware, and the virtual device drivers were all hooks into the underlying DOS and it's interface with the system BIOS. I find this hard to believe, especially in conjunction with device I/O such as video, network, audio, USB, etc. If the above is not true when it comes to 9x/me, then how would you explain 9x/me relationship with (or use of) 32-bit I/O operations vs 16-bit operations (and relying on DOS for those operations)?

#4
dencorso

dencorso

    Adiuvat plus qui nihil obstat

  • Supervisor
  • 5,845 posts
  • OS:98SE
  • Country: Country Flag

Donator

RLoew already answered you in a nutshell.
Let me put it in a different light for you: when Win 95 starts, it Isolates that 1088 KiB which is where Real Mode DOS booted in Machine #0.
Than it *takes possession* of the machine in the fullest extent and provides each new Virtual-86 DOS machine created it's own "booted DOS" image, which consists of some instanced parts of what is in Machine #0 (and these instanced parts are discardable) and other parts of that memory are actually shared (and if modified in a wrong way can crash the machine). Some data structures created by DOS and HIMEM are used by Win 95 as inherited from DOS. No, or almost no, code, from DOS is ever executed for Win 95 normal functioning. The underlying DOS is in "suspended animation" until Win 95 terminates. Exactly 0% of the CPU time it is running in Real-Mode, after Win 95 has sucessfully started. If this still is too little info for you, I strongly suggest you get a copy of Andrew Schulman's Unauthorized Windows 95 (ISBN 1-56884-169-8, nowadays it should be really cheap, as a used tech book) and read it cover-to-cover at least twice. All your remaining doubts ought to have been dispelled, by then.
 

What would be the basis of claiming that:

- for a large percentage...
- Some say that [...], but practically ALL of the other I/O operations...


Those claims are totally baseless, and reveal the depth of either the claimer's cluelessness abour Win 9x/ME or of his interest in downplaying it by misdescribing it.

With all due respect, why do you insist in points RLoew already told you are simply wrong?



#5
Nomen

Nomen

    Member

  • Member
  • PipPip
  • 191 posts
  • OS:98SE
  • Country: Country Flag

RLoew already answered you in a nutshell.
With all due respect, why do you insist in points RLoew already told you are simply wrong?

I am not insisting that RLoew's "Yes/No" answers are wrong.

I'm trying to get more detailed answers than Yes/No, otherwise I can't put forward an argument (in another forum) to counter those claims. Not looking for pages and pages of explanations - a few sentences would do it. It looks like I won't get those answer here.

Edited by Nomen, 16 July 2013 - 07:15 AM.


#6
jaclaz

jaclaz

    The Finder

  • Developer
  • 14,266 posts
  • OS:none specified
  • Country: Country Flag

I'm trying to get more detailed answers than Yes/No, otherwise I can't put forward an argument (in another forum) to counter those claims. Not looking for pages and pages of explanations - a few sentences would do it.

In other words you are expecting to have complete, articulated answers in reply to vague/undocumented/taken out of context questions (which normally can - at the most - provoke Yes/No answers).

And you are doing this without really wanting to learn about the topic, you just want a nice, clean, clear, summing up in order to back an argument on another forum, possibly citing it with the same vague "Some say that....".
http://en.wikipedia....g#Introductions

It looks like I won't get those answer here.

Hmmm, yes it looks a lot like it.

jaclaz




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users



How to remove advertisement from MSFN