Click here to Skip to main content
15,887,135 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: 1 stable 2 super stable Pin
honey the codewitch9-Sep-23 4:42
mvahoney the codewitch9-Sep-23 4:42 
GeneralRe: 1 stable 2 super stable Pin
dandy7210-Sep-23 4:10
dandy7210-Sep-23 4:10 
GeneralRe: 1 stable 2 super stable Pin
jochance12-Sep-23 5:13
jochance12-Sep-23 5:13 
GeneralRe: 1 stable 2 super stable Pin
trønderen9-Sep-23 4:56
trønderen9-Sep-23 4:56 
GeneralRe: 1 stable 2 super stable Pin
dandy7210-Sep-23 4:10
dandy7210-Sep-23 4:10 
GeneralRe: 1 stable 2 super stable Pin
trønderen10-Sep-23 6:28
trønderen10-Sep-23 6:28 
GeneralRe: 1 stable 2 super stable Pin
dandy7211-Sep-23 2:58
dandy7211-Sep-23 2:58 
GeneralRe: 1 stable 2 super stable Pin
trønderen11-Sep-23 3:58
trønderen11-Sep-23 3:58 
The hardware offering certainly is there. A specific OS is not obliged to make use of it.

The 386 segment system looks like it was hand crafted to Windows of the day. But MS made attempts to make Window the universal OS for all sorts of processors (such as MIPS, Alpha, PowerPC, Itanium, ...). Since they do not all provide the same hardware support, MS chose to limit themselves to the bare minimum available on all processors and do their own software simulation, identical for all of it. The same goes for the protection system: They ignored all advanced mechanisms. All users shall have the same offering; we cannot give x86/x64 users a protection mechanism unavailable to users on other platforms.

Of course they could have designed a hardware abstraction layer that modelled both segment and ring mechanisms that could very easily be mapped to Intel hardware, but required far more software emulation on other processors (giving them a competitive disadvantage). Maybe they would have done that, if they had known at that time how other processors would dwindle away anyway. They didn't. A major factor may be that they picked up OS experts from other architectures that didn't provide such things, major design architects simply unfamiliar with how such mechanisms are used, so they ignored them.

I am quite sure that at least you were right, that Windows ignored the intermediate privilege levels (along with the segment mechanisms). I thought that in order to make a more robust kernel, they started pushing external drivers down to ring 1 a while ago. I may very well be wrong. Maybe what I have read is unfounded speculations, and I found it such a natural thing to do that I took for granted that the change was carried through.

If the OS code is structured like a crow's nest it might be very difficult to realize, though. I have strong suspicions that the current state of the Windows implementation is not quite what you would use as a model system if you were teaching a university level course in well-designed OS implementation.
GeneralRe: 1 stable 2 super stable Pin
dandy7211-Sep-23 5:34
dandy7211-Sep-23 5:34 
GeneralRe: 1 stable 2 super stable Pin
dandy7211-Sep-23 3:00
dandy7211-Sep-23 3:00 
GeneralRe: 1 stable 2 super stable Pin
trønderen11-Sep-23 3:19
trønderen11-Sep-23 3:19 
GeneralRe: 1 stable 2 super stable Pin
dandy7211-Sep-23 5:29
dandy7211-Sep-23 5:29 
GeneralRe: 1 stable 2 super stable Pin
Calin Negru9-Sep-23 5:57
Calin Negru9-Sep-23 5:57 
GeneralRe: 1 stable 2 super stable Pin
Matt Bond11-Sep-23 5:24
Matt Bond11-Sep-23 5:24 
GeneralRe: 1 stable 2 super stable Pin
jschell8-Sep-23 8:13
jschell8-Sep-23 8:13 
GeneralRe: 1 stable 2 super stable Pin
Calin Negru8-Sep-23 9:02
Calin Negru8-Sep-23 9:02 
GeneralRe: 1 stable 2 super stable Pin
Amarnath S8-Sep-23 15:32
professionalAmarnath S8-Sep-23 15:32 
GeneralRe: 1 stable 2 super stable Pin
Calin Negru8-Sep-23 22:16
Calin Negru8-Sep-23 22:16 
GeneralRe: 1 stable 2 super stable Pin
jschell11-Sep-23 5:51
jschell11-Sep-23 5:51 
GeneralRe: 1 stable 2 super stable Pin
trønderen8-Sep-23 8:38
trønderen8-Sep-23 8:38 
GeneralRe: 1 stable 2 super stable Pin
Nelek9-Sep-23 3:25
protectorNelek9-Sep-23 3:25 
GeneralRe: 1 stable 2 super stable Pin
obermd8-Sep-23 11:14
obermd8-Sep-23 11:14 
GeneralRe: 1 stable 2 super stable Pin
Calin Negru8-Sep-23 21:49
Calin Negru8-Sep-23 21:49 
GeneralRe: 1 stable 2 super stable Pin
Richard MacCutchan8-Sep-23 21:49
mveRichard MacCutchan8-Sep-23 21:49 
GeneralRe: 1 stable 2 super stable Pin
Calin Negru9-Sep-23 3:37
Calin Negru9-Sep-23 3:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.