OSDev.org

The Place to Start for Operating System Developers
It is currently Thu Mar 28, 2024 3:10 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: Win9x memory protection
PostPosted: Sun Oct 07, 2007 11:25 am 
Offline
Member
Member
User avatar

Joined: Tue Feb 01, 2005 12:00 am
Posts: 60
Hello,

Why are system structures like the GDT and the IDT under Win9x unprotected, allowing the user to alter and overwrite sensitive data. How were the paging system and memory protection implemented.

Thank you in advance.


Top
 Profile  
 
 Post subject:
PostPosted: Sun Oct 07, 2007 4:37 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
I believe they go unprotected to provide backwards-compatibility with DOS.

Yes, it's a horrible design. Let's not emulate it.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Oct 09, 2007 6:10 am 
Offline
Member
Member
User avatar

Joined: Tue Feb 01, 2005 12:00 am
Posts: 60
Quote:
I believe they go unprotected to provide backwards-compatibility with DOS.

How so? I know they use some "dirty" tricks like hidden API with ordinal values only or VxD calls inside kernel32.dll and similar libraries to call old DOS functions (as wrappers), but what does this have to do with memory protection (eg: paging)?

Quote:
Let's not emulate it.

Don't worry I won't. I just want to know why it works so bad. What mistakes did MS do, what protections did they badly implement, what did they miss.
So could you give more explanations? I found nothing on google.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Oct 09, 2007 9:44 am 
Offline
Member
Member
User avatar

Joined: Tue Oct 17, 2006 6:06 pm
Posts: 1437
Location: Vancouver, BC, Canada
Crazed123 wrote:
I believe they go unprotected to provide backwards-compatibility with DOS.


I think it has more to do with 16-bit Windows compatibility than DOS compatibility. DOS apps run in V8086 mode in Windows 9x, while Win16 apps all expect to run in the same (16-bit) protected-mode address space (although they use different segments for some things).

_________________
Top three reasons why my OS project died:
  1. Too much overtime at work
  2. Got married
  3. My brain got stuck in an infinite loop while trying to design the memory manager
Don't let this happen to you!


Top
 Profile  
 
 Post subject:
PostPosted: Tue Oct 09, 2007 1:17 pm 
Offline
Member
Member

Joined: Thu Oct 21, 2004 11:00 pm
Posts: 248
Colonel Kernel wrote:
Crazed123 wrote:
I believe they go unprotected to provide backwards-compatibility with DOS.


I think it has more to do with 16-bit Windows compatibility than DOS compatibility. DOS apps run in V8086 mode in Windows 9x, while Win16 apps all expect to run in the same (16-bit) protected-mode address space (although they use different segments for some things).

Ooohhh...

And the problem really comes more from the protection mechanisms that they didn't implement than the ones they did.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 28 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group