|
virtual memory system: Porting Unix to the 386: Three Initial PC UtilitiesThe second article in the "PORTING UNIX TO THE 386" series discussed the utilities we had to build to test the port on an actual 80386 PC. This, the first article, is the first published mention of 386BSD. By this time, the project had been operational for 18 months, and William Jolitz was at Berkeley working on the Net/2 release. 386BSD started out in 1989 with a derivative virtual memory system from the VAX by way of a 68030. In February/March 1991, it was cutover to a totally different one cut out of CMU's MACH system, and released with Net/2. Process Context DescriptionHardware context switch state description and the part where 386BSD context switching intrudes into the machine independent code semantics. Page Fault and Segmentation Fault MechanismCatching potentially restartable 386 processor faults with 386BSD. Prevaricating with the Standalone SystemWe didn't just load and debug the kernel; we chose to prove portions first. That way we learned the dependances first, and could try alternatives seperately. Later we used the same means to revise them later. Page Fault HandlingWe coded trap handlers and simulated read and write faults to test out page faults with our processor support code. On a 2MB machine, we knew we'd get 1,000's. |