RE: FPage
Jan Stoess <[email protected]> Wed, 19 Jan 2011 13:00:26 +0000
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
> I have read about fpage format, about IPC operations etc., but I don't > understand, is mapped/granted fpages stored somewhere? The kernel stores the map/grant transactions in a database called mapping d= atabase. It needs to do so since otherwise unmap couldn't be performed recu= rsively. > For example I requested to map 8 KiB at 0x0000_0000 and then trying to > unmap 4 KiB starting from 0x0000_0fff. Is it possible or not? Is it possi= ble, e.g. > to unmap a part from previously mapped fpage, or I should unmap only full > fpage mapped previously, with the same address and size it was mapped? No, you can also unmap parts. The hardware page size is the limit. > P.S. Sorry for my English, it's not my native language. I totally understand; it's not my native language, too :) Best, -Jan -- Dr.-Ing. Jan Stoess KIT/UKa System Architecture Group Phone: +49 (721) 6084 4056 Fax: +49 (721) 6084 7664 http://os.ibds.kit.edu/stoess=20 > -----Original Message----- > From: Wolf Ramovsky [mailto:[email protected]] > Sent: Wednesday, January 19, 2011 13:29 > To: Jan Stoess > Subject: Re: FPage >=20 > Thank you for fast reply, Jan. >=20 > Sorry, I have made some mistakes in my prev. message. Application request > memory map from Sigma0, not from kernel, I know. But, I guess, it's not > important here. >=20 > I have read about fpage format, about IPC operations etc., but I don't > understand, is mapped/granted fpages stored somewhere? >=20 > For example I requested to map 8 KiB at 0x0000_0000 and then trying to > unmap 4 KiB starting from 0x0000_0fff. Is it possible or not? Is it possi= ble, e.g. > to unmap a part from previously mapped fpage, or I should unmap only full > fpage mapped previously, with the same address and size it was mapped? >=20 >=20 > P.S. Sorry for my English, it's not my native language. >=20 > 2011/1/19 Jan Stoess <[email protected]>: > > Hello Wolf, > > > > An fpage is an abstraction for a virtual page. It is the basic unit for= map/grant > operations: By specifying an fpage applications can pass to kernel which = portion > of _their_ address space they'd like to get mapped to a recipient address= space. > Likewise, recipients can tell the kernel, where in _their_ address space = they'd > like to receive the mapping by specifying an fpage. The actual fpage may = (but > need not) be backed by some physical page frame. > > > > -Jan > > > > -- > > Dr.-Ing. Jan Stoess > > KIT/UKa System Architecture Group > > Phone: +49 (721) 6084 4056 > > Fax: +49 (721) 6084 7664 > > http://os.ibds.kit.edu/stoess > > > > > >> -----Original Message----- > >> From: [email protected] [mailto:[email protected] > >> karlsruhe.de] On Behalf Of Wolf Ramovsky > >> Sent: Wednesday, January 19, 2011 11:53 > >> To: [email protected] > >> Subject: FPage > >> > >> Hello All. > >> > >> I want to know, what fpage is. Is it real object, that stored > >> somewhere, or it "exists" only during mapping/granting operation, > >> when kernel changes pagetable and then "forget" about fpage? > > > >