home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   alt.os.development      Operating system development chatter      4,255 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 2,388 of 4,255   
   James Harris to muta...@gmail.com   
   Re: microsoft vs linux   
   01 Jul 21 07:45:45   
   
   From: james.harris.1@gmail.com   
      
   On 30/06/2021 22:48, muta...@gmail.com wrote:   
   > On Thursday, July 1, 2021 at 2:25:42 AM UTC+10, James Harris wrote:   
   >   
   >>> Linux programs on the other hand do INT 80H calls,   
   >>> just as MSDOS programs do INT 21H calls. This   
   >>> means the calling environment needs sufficient   
   >>> privilege to set up at least one interrupt vector.   
   >   
   >> It's not the calling environment which sets up the interrupt vector. The   
   >> kernel does that.   
   >   
   > I wish to run PDOS as an unprivileged kernel. You can   
   > see proof of concept here:   
   >   
   > https://sourceforge.net/p/pdos/gitcode/ci/master/tree/bios/bios.c   
      
   I am not sure what's happening in that - and I've not been following the   
   details of what you are doing - but in principle if you have the calling   
   sequence as   
      
      app --> yourcode --> something privileged   
      
   then (unless the privileged code will reflect invocations to yourcode)   
   those apps could not use software interrupts to get to yourcode but you   
   could have libraries which the apps can call. Ideally, the app would say   
   something like   
      
      pdos_write(chan, "Hello", 5)   
      
   where pdos_write would be in a library you've supplied which will, if   
   necessary, go on to invoke the relevant routine in yourcode.   
      
   Ideally, IMO, pdos_write would be dynamically linked so it would not   
   have to be part of the app binary.   
      
   >   
   > Any application that does any interrupt won't work.   
   >   
   > Win32 executables should work, although I haven't   
   > definitively proven that DLLs can be handled.   
      
   The bottom line is that, AISI, apps should only have to include standard   
   calls (no ints, no sysenters etc), and it is the OS or library which   
   should supply the code which they call. That's not unusual. I think it's   
   how OSes normally make their service routines available.   
      
      
   --   
   James Harris   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca