Path: utzoo!attcan!uunet!lll-winken!lll-tis!ames!elroy!spl1!laidbak!obdient!yclept!root From: root@yclept.UUCP (Root) Newsgroups: comp.unix.questions Subject: Re: How do you find the user structure? Keywords: kernel addressing Message-ID: <109@yclept.UUCP> Date: 12 Dec 88 03:54:04 GMT References: <214@fesk.UUCP> <13232@ncoast.UUCP> Reply-To: root@yclept.UUCP (PUT YOUR NAME HERE) Organization: Leptons & Quarks, Winfield, IL 60190-1412 Lines: 28 In article <13232@ncoast.UUCP> allbery@ncoast.UUCP (Brandon S. Allbery) writes: >As quoted from <214@fesk.UUCP> by sverre@fesk.UUCP (Sverre Froyen): >+--------------- >| I have tried to get Brandon's sysV version of w to work on my >| National Semiconductor ICM3216 running SysV.2.2. This is a >| demand paged system .... >+--------------- >I've been trying to find it myself, via trial-and-error; I want to use it on >a few demand-paged System V-based machines myself. Anyone know what V.2.2 >and V.3.1 do with the ublock? I have seen several methods used to address the user block. One method is to use a pointer in a fixed location, possibly an area that is particulary easy to address for the particular processor the system is running on. If memory copying is relatively cheap on the particular processor, the user area can be swapped to a fixed real memory address. If the kernel itself runs with the memory mapping unit active, another method is possible -- the active user area is remapped to a fixed virtual area. The most likely places to look for the code that handles to user switch is in the interrupt handlers and in the sleep() routine which dispatches a waiting process onto the processor. That is determined by the implementation and not by any description of the interface between the kernel and the application programs. Randy Herber, @ home: {att|amdahl|mcdchg|obdient|wheaton}!yclept!rjh, rjh@yclept.chi.il.us, Disclaimer: These are my personal views. Nothing may be construed about my employer's or customers' views or plans from this information.