<?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[Wie erstelle ich ein eigenes OS?]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Ich heiße Stefan und bin ein Hobbyprogrammierer. Ich möchte euch fragen, ob sich einer von euch mit der Programmiersprache NASM auskennt. Ich möchte diese Programmiersprache gerne lernen, da ich ein eigenes (textbasierendes) OS schreiben möchte. Das OS soll aber nicht auf dem Computer installiert und ausgeführt werden, sondern von der CD-ROM gebootet werden und übersetzte ANSI-C++-Programme ausführen.<br />
Die Frage ist, wie ich eine Sektordatei, die von BIOS gebootet wird, auf die C++-Bibliothek verweisen kann, damit der Computer die Grundfunktionen von Textein- und -ausgaben (wie zum Beispiel cout und printf) finden (Nachschlagen) kann, um kompilierte C++-Dateien richtig auszuführen. Ich würde mich freuen, wenn mir einer ein NASM-Lehrbuch (auf Deutsch) oder Internetseite empfehlen kann, um die Bedeutung Schlüsselwörter und Anweisungen besser zu verstehen. Sehr toll wäre es, wenn mir einer, anhand von Beispielen, erklären könnte, wie man eine Datei von der CD-ROM bootet.</p>
<p>So stelle ich mir mein kleines OS vor:<br />
CD-ROM booten -&gt; C++-Programm (in Textmodus) ausführen -&gt; Computer ausschalten</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/218279/wie-erstelle-ich-ein-eigenes-os</link><generator>RSS for Node</generator><lastBuildDate>Fri, 09 Oct 2026 05:31:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/218279.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 18 Jul 2008 13:14:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Fri, 18 Jul 2008 13:23:49 GMT]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Ich heiße Stefan und bin ein Hobbyprogrammierer. Ich möchte euch fragen, ob sich einer von euch mit der Programmiersprache NASM auskennt. Ich möchte diese Programmiersprache gerne lernen, da ich ein eigenes (textbasierendes) OS schreiben möchte. Das OS soll aber nicht auf dem Computer installiert und ausgeführt werden, sondern von der CD-ROM gebootet werden und übersetzte ANSI-C++-Programme ausführen.<br />
Die Frage ist, wie ich eine Sektordatei, die von BIOS gebootet wird, auf die C++-Bibliothek verweisen kann, damit der Computer die Grundfunktionen von Textein- und -ausgaben (wie zum Beispiel cout und printf) finden (Nachschlagen) kann, um kompilierte C++-Dateien richtig auszuführen. Ich würde mich freuen, wenn mir einer ein NASM-Lehrbuch (auf Deutsch) oder Internetseite empfehlen kann, um die Bedeutung Schlüsselwörter und Anweisungen besser zu verstehen. Sehr toll wäre es, wenn mir einer, anhand von Beispielen, erklären könnte, wie man eine Datei von der CD-ROM bootet.</p>
<p>So stelle ich mir mein kleines OS vor:<br />
CD-ROM booten -&gt; C++-Programm (in Textmodus) ausführen -&gt; Computer ausschalten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549402</guid><dc:creator><![CDATA[stefan2008]]></dc:creator><pubDate>Fri, 18 Jul 2008 13:23:49 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Fri, 18 Jul 2008 13:24:52 GMT]]></title><description><![CDATA[<p>die &quot;C++-bibliothek&quot; verwendet intern natürlich die routinen, die das jeweilige betriebssystem zur verfügung stellt; z.b. für eine ausgabe auf der konsole.</p>
<p>da du selbst ein betriebssystem erstellst, musst du also diese routinen (z.b. putchar/getchar) einmal selbst implementieren - und danach musst du die C++-standardbibliothek selbst erstellen, damit sie intern die funktionen deines betriebssystems verwendet.</p>
<p>grundsätzlich. natürlich muss dein OS das programm erst einmal laden können und dein compiler muss das programm in der form erstellen, dass dein OS es auch laden kann.</p>
<p>anders gesagt: suche lieber nach etwas fertigem (OS), wenn du unbedingt C++ programme zum laufen bringen willst, spiel dich vielleicht einmal so mit assembler, ohne gleich ein OS machen zu wollen (schau mal im assembler-forum in zu den FAQs) oder bleib lieber noch eine zeitlang bei simplem C++ <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549409</guid><dc:creator><![CDATA[queer_boy]]></dc:creator><pubDate>Fri, 18 Jul 2008 13:24:52 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Fri, 18 Jul 2008 16:37:12 GMT]]></title><description><![CDATA[<blockquote>
<p>Ich möchte euch fragen, ob sich einer von euch mit der Programmiersprache NASM auskennt.</p>
</blockquote>
<p>Einige schon. NASM ist ein Tool keine Programmiersprache.</p>
<p><a href="http://de.wikipedia.org/wiki/NASM" rel="nofollow">http://de.wikipedia.org/wiki/NASM</a><br />
<a href="http://www.henkessoft.de/Assembler/Assembler.htm" rel="nofollow">http://www.henkessoft.de/Assembler/Assembler.htm</a><br />
<a href="http://www.henkessoft.de/Roboter/stk500.htm" rel="nofollow">http://www.henkessoft.de/Roboter/stk500.htm</a><br />
<a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-17.html" rel="nofollow">http://www.c-plusplus.net/forum/viewforum-var-f-is-17.html</a><br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-217887.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-217887.html</a><br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-124713-and-postdays-is-0-and-postorder-is-asc-and-start-is-0.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-124713-and-postdays-is-0-and-postorder-is-asc-and-start-is-0.html</a><br />
<a href="http://www.c-plusplus.net/forum/viewforum.php?f=30&amp;sid=30bf6507b7f25560290181958650c89f" rel="nofollow">http://www.c-plusplus.net/forum/viewforum.php?f=30&amp;sid=30bf6507b7f25560290181958650c89f</a><br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39771.html" rel="nofollow">http://www.c-plusplus.net/forum/viewtopic-var-t-is-39771.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549512</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Fri, 18 Jul 2008 16:37:12 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Fri, 18 Jul 2008 19:46:59 GMT]]></title><description><![CDATA[<p>Wenn du ein OS entwickeln möchtest, schau mal das Free-DOS-Projekt an.<br />
Das ist zwar soweit ich mich erinnere überwiegend in C gecodet aber der<br />
eine oder andere Link oder auch Info's können dir vielleicht weiterhelfen.</p>
<p>MfG f.-th.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549578</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549578</guid><dc:creator><![CDATA[f.-th.]]></dc:creator><pubDate>Fri, 18 Jul 2008 19:46:59 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sat, 19 Jul 2008 05:47:53 GMT]]></title><description><![CDATA[<p>ist es nicht sinnlos ein OS in Assembler schreiben zu wollen? Für was soll das gut sein? Gibt doch schon Linuxversionen die von CD starten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549659</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549659</guid><dc:creator><![CDATA[was soll das]]></dc:creator><pubDate>Sat, 19 Jul 2008 05:47:53 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sat, 19 Jul 2008 07:13:27 GMT]]></title><description><![CDATA[<p>Wenn nicht nebeneinander mehrere OSe in der Vergangenheit entwickelt worden<br />
wären, wären die Aktuellen nicht das was sie heute sind.</p>
<p>Aber zum Einstieg in Assembler gleich ein OS schreiben ist schon heftig.<br />
Das heisst:<br />
Hardwarewissen aneignen: CPU, Board und Speichermedium<br />
Wird das Speichermedium dann direkt oder indirekt angesprochen?<br />
Und gleichzeitig noch programmieren.<br />
Du weisst schon das du in der Ebene die Hardware sehr gut ansteuern kannst, aber<br />
genauso einfach, oder gar noch schneller, unbrauchbar machen kannst, weil du z.B.<br />
die Firmen-Software des CD/DVD-Laufwerks überschrieben hast, mit falschen Daten. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Wenn du dir der Risiken und Nebenwirkungen bewusst bist, leg los. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>MfG f.-th.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549667</guid><dc:creator><![CDATA[f.-th.]]></dc:creator><pubDate>Sat, 19 Jul 2008 07:13:27 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sat, 19 Jul 2008 13:42:51 GMT]]></title><description><![CDATA[<p>Mir ist es schon bewusst, das Programme, die mit der Programmiersprache Assembler geschrieben werden - im Gegensatz zu den höheren Programmiersprachen - für jede unterschiedliche Architektur des Mikroprozessors angepasst werden muss.<br />
Ich gebe zu, es ist schon etwas zu hochgesetzt, das einer, der sich mit der Programmiersprache Assembler nicht sonderlich auskennt, nicht einfach so ein Betriebssystem programmieren kann. Aber da ich mich seit meinem 17. Lebensjahr mit unterschiedlichen Programmiersprachen beschäftigt habe, fällt mir auf, dass das Prinzip - sei es BASIC, C++ oder Java - immer gleich ist – nur mit dem einen unterschied das BASIC-Programm interpretiert und nicht kompiliert werden. Ich glaube mir wird es nicht schwere Fallen von C++ auf Assembler zu wechseln.<br />
Sicherlich wird es schwieriger sein die Programmiersprache Assembler zu lernen, da es im Gegensatz zu den Hörern Programmiersprachen nicht so viele Schlüsselwörter oder besser gesagt Mnemoniken enthält, bei denen man Ihre Bedeutung nicht so schnell erahnen kann.<br />
Ich will kein Betriebssystem schreiben, das Treiber oder Bibliothekssammlung auf dem Computer installieren, damit der Computer weiß, wie er damit umgehen soll.<br />
Ich möchte eine CD-ROM booten, die einfache Texte auf dem Bildschirm ausgibt und Eingaben entgegen nimmt.<br />
Aber um die Programmiersprache Assembler und vor allem den Aufbau und die Funktionsweise des Mikroprozessors besser zu verstehen, suche ich ein gutes Assembler-Buch, das sich mit x86_64 Architekturen (64-Bit-Prozessoren) befasst. Daher meine Frage: Kann mir einer von euch ein gutes Assembler-Buch empfehlen, das für Um- oder Einsteiger gut geeignet ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549790</guid><dc:creator><![CDATA[stefan2008]]></dc:creator><pubDate>Sat, 19 Jul 2008 13:42:51 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sun, 20 Jul 2008 10:30:07 GMT]]></title><description><![CDATA[<p>Du solltest zunächst im Assembler-Forum dein Projekt durch Diskussionen mit erfahrenen Leuten etwas schärfer fassen. So einfach von C++ auf Assembler, das ist nicht so einfach, wie Du denkst.</p>
<p>Du kannst ja zunächst mal in Kombination mit C++ üben (Intel-Syntax), so in dem Stil:</p>
<pre><code>//global 
int a = 1;
int b = 2;

//...

_asm
{
  mov eax, b
  mov ebx, a
  mov a, eax     
  mov b, ebx
}
</code></pre>
<p><a href="http://www.henkessoft.de/C++/Cpp_school/asm.htm" rel="nofollow">http://www.henkessoft.de/C++/Cpp_school/asm.htm</a></p>
<p>... oder legst hier los:<br />
<a href="http://www.henkessoft.de/Assembler/Assembler.htm" rel="nofollow">http://www.henkessoft.de/Assembler/Assembler.htm</a> (PC)<br />
<a href="http://www.henkessoft.de/Roboter/stk500.htm" rel="nofollow">http://www.henkessoft.de/Roboter/stk500.htm</a> (Mikroprozessoren)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1550100</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1550100</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Sun, 20 Jul 2008 10:30:07 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sun, 20 Jul 2008 10:36:44 GMT]]></title><description><![CDATA[<blockquote>
<p>Kann mir einer von euch ein gutes Assembler-Buch empfehlen, das für Um- oder Einsteiger gut geeignet ist?</p>
</blockquote>
<p>Das Assembler Buch (Addison-Wesley) / Podschun, Trutz Eyke<br />
<a href="http://www.amazon.de/Das-Assembler-Buch-Grundlagen-Einf%C3%BChrung-Hochsprachenoptimierung/dp/3827319293" rel="nofollow">http://www.amazon.de/Das-Assembler-Buch-Grundlagen-Einführung-Hochsprachenoptimierung/dp/3827319293</a><br />
(manche finden es allerdings zu langatmig, 64 bit ist - soweit ich weiß - auch noch nicht dabei)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1550102</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1550102</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Sun, 20 Jul 2008 10:36:44 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sun, 20 Jul 2008 12:16:44 GMT]]></title><description><![CDATA[<p>Ich habe etwas vegleichbares mal mit einem 6502-Rechner (Singeleboard, Eigenbau)<br />
gemacht. Soviel Assembler daß der C-Crosscompiler dann irgendwann einmal etwas<br />
zu tun bekommen kann (ich habe die Software dann doch komplett in Assembler<br />
geschrieben, der 6502 ist recht übersichtlich).</p>
<p>Wenn Du das mit den x86-Prozzis vorhast, muß Du recht sattelfest in Assembler und<br />
C sein (&gt;10 Jahre Erfahrung, SEHR viel Sitzflisch und Sturheit).</p>
<p>Vergiß es. OS gibt es nun wirklich genug.</p>
<p>Wenn Du es machst, besorge Dir erstmal Literatur über die Struktur eines OS<br />
(zB Brinch-Hansen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1550161</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1550161</guid><dc:creator><![CDATA[Scheppertreiber]]></dc:creator><pubDate>Sun, 20 Jul 2008 12:16:44 GMT</pubDate></item><item><title><![CDATA[Reply to Wie erstelle ich ein eigenes OS? on Sun, 20 Jul 2008 13:23:05 GMT]]></title><description><![CDATA[<p>Ich würde dann eher in Richtung µP, z.B. Robotik oder Elektronik, gehen- Auf dem PC ist das alles ziemlich langweilig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1550199</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1550199</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Sun, 20 Jul 2008 13:23:05 GMT</pubDate></item></channel></rss>