2009-09-04 20 views
7

Ich würde gerne wissen, wie man die Größe der Seitentabelle (in Bytes) berechnet, wenn es einen Eintrag pro Seite gibt, jeder Eintrag erfordert 4 Bytes und meine Seitengröße ist 64KB.Wie berechne ich die Seitentabellengröße?

+0

Eine Seitentabelle sollte mehr als 1 Eintrag haben, sonst ist es nutzlos. Bitte überprüfen Sie Ihre Aufgabe und korrigieren Sie die Frage. –

Antwort

0

Da Sie nicht klar angegeben haben, was Sie mit KB meinen, könnten Sie entweder ein Kilo byte (kB), also 1000 Bytes, und Kibi byte (KiB) bedeuten. das sind 1024 Bytes.

Die Größe der Seitentabelle in Byte kann über multiplication berechnet werden.

+1

Nun, wenn KAR über Seiten und Seitentabellen spricht, dann scheint es für mich offensichtlich, dass sie 1024 bedeuten. –

+4

Wenn ich jemals jemanden auf der Straße treffe, der "KiB" benutzt, werde ich sie mit einem Stück Tod besiegen Nasser Sellerie (um mein Vergnügen langlebiger zu machen). Ein Kilobyte ist 1024 hier. – paxdiablo

+0

@ Spoike, danke für den Wikipedia-Link über Multiplikation, habe ich viel gelernt: p – Benoit

0

Anzahl der Seiten * page-table-entry-size sollte die Antwort geben. Die Seitentabelle enthält nur Adressen von Seiten; Seitengröße ist irrelevant.

Also, wenn Sie 1000 Seiten haben, dann ist die Seitentabelle Größe 4 * 1000, wenn Sie 1000000 Seiten haben dann seine 4 * 1000000.

+0

wenn 4 * 1000 dann Seitentabelle Größe 4000 Bytes bin ich richtig? –

+0

@KAR: Nach der Definition, die Sie in Ihrer ursprünglichen Frage angegeben haben, ist jeder Seitentabelleneintrag 4 Byte groß, und für jede Seite gibt es einen Eintrag. Wenn Sie also 1000 Seiten haben, dann hat die Seitentabelle 1000 Einträge und jeder ist 4 Bytes. Das macht 4000 Bytes. Das ist eine sehr kleine Erinnerung. Jetzt arbeiten Sie es für Ihr aktuelles System aus. –

0

Ich denke, es ist nicht so einfach, hat nicht jeden Seitentabelleneintrag so etwas wie gültige, Referenz oder schmutzige Bits, wenn alle 3 enthalten sind, müsste die Tabelle für 1000 Seiten eine Größe wie 1000x haben (4x8 + 3) in Bits. Lass es mich wissen, wenn ich Recht habe, denn das sind auch meine Hausaufgaben ;-).

15

Größe der Seitentabelle (Bytes) = Anzahl der Einträge in Pagetable * Größe des Eintrags

Anzahl der Einträge in Pagetable = Größe des Speicher/Pagesize

Größe des Eintrag = 4 Bytes in diesem Fall.

Plug and Chug.

Verwandte Themen