TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Peter Fitzsimmons
from: Russell Coker
date: 1995-06-10 23:11:00
subject: Pdd

JG> Assuming of course you discount the severe penalty resulting
 JG> from segment register loading and/or segment prefix override
 JG> bytes.

PF>A 32bit device driver has to do this anyway,  since it is 
PF>running in a different address mode/space than the 
PF>applications that are calling it. There is no "flat model" 
PF>across privilege levels (unless everything used GDT 
PF>selectos,  which would render OS/2 about as stable as 
PF>Windows).

   Surely not!  If the device drivers were all running in the segment then
I would not expect this to greatly impact the reliability of the system -
isn't your system FUBAR when a device driver stuffs up anyway?  As for the
comparison with Windows, an operating system that protects user-level
processes from each other and lets the device drivers run free would surely
be a lot more stable than an OS without any protection.

PF>Additionally,  all buffers are broken down into a 
PF>collection of 4KB page lists,  no matter how large a buffer 
PF>is passed in (by DosWrite(),  for example),  since this is 
PF>the granularity of the virtual memory system. Every page 
PF>requires accessing through its own selector.

   Why does it do that?  Why couldn't OS/2 just give the device driver the
offset in the applications data segment?  Then the device driver could use
that segment to access all the data.  Surely that would be much more
efficient than having a selector for each page!

PF>Unfortunately,  your non-existant all-32bit OS/2 would all 
PF>have run at ring 0,  with no (or crippled) virtual memory 
PF>support.

   I believe that he was referring to an all-32bit OS/2 with no protection
at all from buggy device drivers and the usual level of protection from
buggy applications.


   cya
___
 X MR/2 2.0 NR X Power corrupts, but OS/2 is kinda neat

--- Maximus/2 2.02
* Origin: Multi - 61-3-9739-7145 - multi.apana.org.au (3:633/363)
SEEN-BY: 620/243 632/103 341 348 363 998 633/154 252 260 363 371 373 634/384
SEEN-BY: 635/301 502 503 636/100 638/100 640/820 690/660 711/409 410 413 430
SEEN-BY: 711/807 808 809 934 949 955 712/515 713/888 800/1 7877/2809
@PATH: 633/363 260 371 635/503 632/348 711/409 808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.