Re: Operating system design questions
From: Tauno Voipio (tauno.voipio_at_iki.fi.NOSPAM.invalid)
Date: Sun, 10 Apr 2005 20:13:10 GMT
Luka Napotnik wrote:
>>>1. virtual memory - "page table": does this table contain the offset
>>>addresses of pages in physical memory or do I have to calculate the page
>>>offsets from a formula?
>>The page offsets go directly from linear addresses (virtual) to
>>physical addresses. The upper bits get translated by page tables.
>>For example, in Intel 80386+ architecture, the lowest 12 bits
>>pass through intact and the 20 top bits will translated.
>>Get a programmer's manual of the hardware you're going to
>>use and look details from it.
> Can I use the Linux page table for my OS? Of curse for 386.
Page table is a memory structure used by the paging hardware.
Linux has its own, and you have to do yours, if you're
going to make an own kernel.
Please, get a programmer's manual to the Intel 80386+
architecture and learn the part of memory management.
For using protected mode, you need also learn and use
some of the segmentation mechanism.
A good place to start is a book of Linux kernel, e.g.
Daniel P. Bovet, Marco Cesati, Understanding the Linux
Kernel, 2nd ed, O' Reilly, ISBN 0-596-00213-0.
The Linux sources show also how to start the whole
system up. Get version 2.4 sources - there is
a simple boot loader in arch/i386/boot/bootsect.S.
-- Tauno Voipio tauno voipio (at) iki fi