<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[MMU - Memory Management Unit[gelöst]]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>sitze gerade an einer Aufgabe für die Betriebssysteme-Vorlesung<br />
und komme einfach nicht weiter. Wir sollen für unseren HAL(ist ein<br />
Programm das wir voher programmiert haben, das HAL-Programme(ähnlich<br />
wie Assembler-Programme) interpretiert und ausführt) eine MMU<br />
programmieren. Doch irgendwie finde ich keinen Anfang.</p>
<p>Hier die Aufgabenstellung:</p>
<blockquote>
<p>Die HAL-1961 (von Aufgabe 7) soll um eine MMU erweitert werden.</p>
<p>- Der Speicher ist wort-adressiert (nicht byte-addressiert).</p>
<p>- Adressen sind 16 Bit breit – allerdings sind Adressen großer als 4096 nicht erlaubt.</p>
<p>- Die virtuelle Adressraum hat eine Größe von 4096 Wörter.</p>
<p>- Die Seitengröße beträgt 512 Wörter.</p>
<p>- Der Datenspeicher hat eine Größe von 2048 Wörter.</p>
<p>- Es gibt also 8 (virtuellen) Seiten und 4 (physischen) Seitenrahmen.</p>
<p>- Tritt ein Seitenfehler auf, soll die älteste Seite verdrängt werden.</p>
<p>- Jeder Prozess braucht eine Seitentabelle. Die Seitentabellen brauchen<br />
..nicht im Datenspeicher gehalten zu werden, sondern können in einer<br />
..entsprechenden Datenstruktur (Array o.Ä) gehalten werden.</p>
<p>- Seiten, die sich nicht im Hauptspeicher der HAL befinden, brauchen nicht<br />
..wirklich auf die Platte geschrieben zu werden, sondern können in einer<br />
..entsprechenden Datenstruktur (Array o.Ä = eine virtuelle Festplatte!)<br />
..gehalten werden.</p>
<p>Implementieren Sie das oben beschriebene Speicherverwaltungskonzept in Ihrer<br />
HAL aus Aufgabe 7! Realisieren Sie dazu eine Funktion für die MMU der Art: int mmu(int adr)<br />
welche Sie einsetzen können, um aus einer virtuellen Adresse eine physische zu ermitteln</p>
</blockquote>
<p>War in der Vorlesung über die MMU nicht da und das Skript und Wikipedia<br />
hilft mir im Moment auch irgendwie nicht weiter...</p>
<p>Vielleicht kann mir ja einer von euch einen Tip geben wie ich das am<br />
besten umsetzen könnte, will natürlich keine komplett Lösung aber ein paar<br />
Hinweise wären schon toll.</p>
<p>mfg smilingman</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/203230/mmu-memory-management-unit-gelöst</link><generator>RSS for Node</generator><lastBuildDate>Wed, 07 Oct 2026 11:00:57 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/203230.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 20 Jan 2008 16:19:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to MMU - Memory Management Unit[gelöst] on Mon, 21 Jan 2008 04:15:05 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>sitze gerade an einer Aufgabe für die Betriebssysteme-Vorlesung<br />
und komme einfach nicht weiter. Wir sollen für unseren HAL(ist ein<br />
Programm das wir voher programmiert haben, das HAL-Programme(ähnlich<br />
wie Assembler-Programme) interpretiert und ausführt) eine MMU<br />
programmieren. Doch irgendwie finde ich keinen Anfang.</p>
<p>Hier die Aufgabenstellung:</p>
<blockquote>
<p>Die HAL-1961 (von Aufgabe 7) soll um eine MMU erweitert werden.</p>
<p>- Der Speicher ist wort-adressiert (nicht byte-addressiert).</p>
<p>- Adressen sind 16 Bit breit – allerdings sind Adressen großer als 4096 nicht erlaubt.</p>
<p>- Die virtuelle Adressraum hat eine Größe von 4096 Wörter.</p>
<p>- Die Seitengröße beträgt 512 Wörter.</p>
<p>- Der Datenspeicher hat eine Größe von 2048 Wörter.</p>
<p>- Es gibt also 8 (virtuellen) Seiten und 4 (physischen) Seitenrahmen.</p>
<p>- Tritt ein Seitenfehler auf, soll die älteste Seite verdrängt werden.</p>
<p>- Jeder Prozess braucht eine Seitentabelle. Die Seitentabellen brauchen<br />
..nicht im Datenspeicher gehalten zu werden, sondern können in einer<br />
..entsprechenden Datenstruktur (Array o.Ä) gehalten werden.</p>
<p>- Seiten, die sich nicht im Hauptspeicher der HAL befinden, brauchen nicht<br />
..wirklich auf die Platte geschrieben zu werden, sondern können in einer<br />
..entsprechenden Datenstruktur (Array o.Ä = eine virtuelle Festplatte!)<br />
..gehalten werden.</p>
<p>Implementieren Sie das oben beschriebene Speicherverwaltungskonzept in Ihrer<br />
HAL aus Aufgabe 7! Realisieren Sie dazu eine Funktion für die MMU der Art: int mmu(int adr)<br />
welche Sie einsetzen können, um aus einer virtuellen Adresse eine physische zu ermitteln</p>
</blockquote>
<p>War in der Vorlesung über die MMU nicht da und das Skript und Wikipedia<br />
hilft mir im Moment auch irgendwie nicht weiter...</p>
<p>Vielleicht kann mir ja einer von euch einen Tip geben wie ich das am<br />
besten umsetzen könnte, will natürlich keine komplett Lösung aber ein paar<br />
Hinweise wären schon toll.</p>
<p>mfg smilingman</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1440001</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1440001</guid><dc:creator><![CDATA[smilingman]]></dc:creator><pubDate>Mon, 21 Jan 2008 04:15:05 GMT</pubDate></item><item><title><![CDATA[Reply to MMU - Memory Management Unit[gelöst] on Mon, 21 Jan 2008 04:13:45 GMT]]></title><description><![CDATA[<p>Hat sich erledigt, habs glaub ich hinbekommen...</p>
<p>mfg smilingman</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1440274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1440274</guid><dc:creator><![CDATA[smilingman]]></dc:creator><pubDate>Mon, 21 Jan 2008 04:13:45 GMT</pubDate></item></channel></rss>