Autor Thema: Einstieg in die Systemprogrammierung  (Gelesen 24722 mal)

Chris Code

  • Gast
Gespeichert
« am: 12. September 2010, 09:33 »
Hallo

Gleich vorweg, meinen anderen Beitrag habe ich gelöscht, weil dabei nichts sinnvolles zu stande kam xD
Ich werde mein OS Projekt im alleingang beginnen und gelegentlich dessen Status in einem Wiki veröffentlichen.

Doch nun zu meinem eigentlichen Thema. Ich möchte ein Magazin schreiben im  PDF Format, das sich wirklich von Grund auf mit Lowlevel beschäftigt. Da ich öfter gelesen habe das man Grundkenntnisse in Assembler und Hardware besitzen sollte und dies ein wenig vermisse.

Diese PDF soll in 3 bis max. 4 Große Themen aufgeteilt werden.

1. Computer (Beschäftigt sich mit der Arbeitsweise des Computers und dessen Hardware)
2. Assembler (grundkurs etc. unter der 80x86 Architektur)
3. C/C++ (grundkurs etc. )
4. Betriebssystementwicklung (Beschäftigt sich mit der Entwicklung von Betriebssystemen auf der 80x86 Architektur von Intel)

Als ich Angefangen habe Assembler zu proggen viel es mir ziemlich schwer vieles zu verstehen. Das lag am mangel an Grundwissen.  Um mein wissen zu vertiefen und es kommenden Generationen von OS programmierern einfacher zu machen möchte ich nun dieses Magazin schreiben und Suche Leute die sich mit der Materie auskennen und es vor veröffentlichung durchlesen und Feedback geben.

Das Konzept dieses Magazins ist einfach:

1. Leihensprache verwenden damit Leute die noch nie zuvor programmiert haben es auch verstehen
2. viele Illustrationen und Bilder verwenden
3. Blickwinkel: Ich habe gemerkt dass ich etwas besser kapiert habe je mehr verschiedene Artikel bsw. Toturials ich dazu gelesen habe. Es Hilft ungemein beim Lernen ein Thema aus verschiedenen Blickwinkeln zu betrachten.
4. Learning by doing... am ende eines jeden Magazins einen kleinen Test ob man sich was gemerkt und verstanden hat.
5. wenn ich den Zeitplan einhalten kann sollte jedesmal innerhalb von 1 - 2 wochen ein Magazin  erscheinen.

Ich erwarte hier keine Meinungen zu diesem Thema da es schon feststeht das ich es machen werde, alleine schon für mich. Ich suche lediglich 1 bis 2 Leute die sich bereit erklären es sich vor veröffentlichung durchlesen und ein Feedback geben.

Vielen Dank!

Programm Noob

  • Gast
Gespeichert
« Antwort #1 am: 12. September 2010, 09:46 »
Moin

Also die Themen finde ich recht gut.
Hab ich das recht verstanden, das du 4 magazine veröffentlichen willst?
es wäre recht gut. wenn du nach dem 4. Magazin weiterere Magazine, die sich mit OS-DEV beschäftigen, veröffentlichst. Also etwas Fortschrittlichere Themen. z.B. schalten in den LongMode usw.

Also ich würde das Magazin Probelesen, auch bezüglich Rechtschreibung.

Programm Noob

Chris Code

  • Gast
Gespeichert
« Antwort #2 am: 12. September 2010, 09:57 »
Moin

Also die Themen finde ich recht gut.
Hab ich das recht verstanden, das du 4 magazine veröffentlichen willst?
es wäre recht gut. wenn du nach dem 4. Magazin weiterere Magazine, die sich mit OS-DEV beschäftigen, veröffentlichst. Also etwas Fortschrittlichere Themen. z.B. schalten in den LongMode usw.

Also ich würde das Magazin Probelesen, auch bezüglich Rechtschreibung.

Programm Noob

Vielen dank für die schnelle Antwort.

Zum Thema Magazine. Nein es sollen nicht 4 Magazine werden sondern 4 Große Themen die ich in mehrere Magazine aufteile (vieleicht sogar als wiki?), damit man innerhalb von 1 - 2 wochen nicht zu viel stoff zu lernen hat. Diese 4 großen Themen habe ich aufgelistet. damit sollte klar sein das OS def aufgeteilt wird auf einzelne Magazine. als nachschlagewerk würde ich die magazine für OS Dev auch mit zusätzlichen Dingen wie BIOS Interruptlisten erweitern.

Programm Noob

  • Gast
Gespeichert
« Antwort #3 am: 12. September 2010, 10:05 »
OK dann habe ich deinen Text ein wenig falsch interpretiert.
Ich würde aber die ersten 3 Themen nicht so ausfühlich behandeln, also vieleicht ein Magazin erstmal nur pro Thema und dann das 4. Tehma auf viele Magazine aufteilen.
Du kannst ja am besten in den Magazinen ein Tutorial machen, was mit einem einfachem Kernel anfängt, dann Textausgabe, Speicherverwaltung, Paging usw. immer weitergeführt wird.
In jedem Magazin, wird dann ein Teilbereich behandelt. Am besten auch Thematisch passend zum Magazin, also wenn es in dem Magazin um Speicherverwaltung geht, dann auch das Tutorialstück dzu in dem Magazin.

Wenn sich anhand des Feedbacks zu erkennen gibt, das die ersten 3 tehem doch etwas ausfühlicher behandelt werden sollen, dann kannst du das noch etwas mehr behandeln. Diw meisten di ehier sind, können nämlich programmieren.

Wenn du ein Tutorialmachst, solltest du es wenns geht in C machen, damit es alle Verstehen. weil Ich persönlich finde Assembler sehr unübersichtlich.

Programm Noob

Chris Code

  • Gast
Gespeichert
« Antwort #4 am: 12. September 2010, 10:13 »
Gute Idee das mit der Aufteilung in einzelne Bereiche und Toturials dazu..

Da es aber ein Magazin werden das auch für anfänger gedacht ist sollte zumindestens Assembler und C++ aufgeteilt werden da es ein magazin ist und keine buch^^.. das thema Computer werde ich wahrscheinlich in ein Magazin quetschen können... Es soll nicht nur für die die hier sind gedacht sein.

Frage: Kennst du ne gute Seite zum Thema wo ich kostenlos hochladen könnte?

Cool-Andy

  • Gast
Gespeichert
« Antwort #5 am: 12. September 2010, 10:16 »
Meinst du jetzt Onlinespeicher (zum verlinken) oder einen richtigen Websitenhoster?
Mir fällt jetzt spontan funpic.de ein.

Chris Code

  • Gast
Gespeichert
« Antwort #6 am: 12. September 2010, 10:17 »
Meinst du jetzt Onlinespeicher (zum verlinken) oder einen richtigen Websitenhoster?
Mir fällt jetzt funpic.de ein.
Im prinzip egal... es sollte halt kostenlos sein und jeder sollte es downloaden können...

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #7 am: 12. September 2010, 11:03 »
Hm, wie wär's mit lowlevel.eu? ;)

Du hast ja sowieso darüber nachgedacht, es in ein Wiki zu packen. Da würde es sich anbieten, eine neue Kategorie anzulegen und alles dort drin zu machen. Ansonsten, wenn es doch kein Wiki sein soll, finden wir dafür sicher auch noch irgendwo Platz.

Aber einen Programmierkurs mit einzubauen, halte ich doch für sehr gewagt. Ohne gute Programmierkenntnisse geht es nicht. Dass man die konkreten Sprachen Assembler und C noch ein bisschen behandelt, ist wohl okay. Aber du kannst nicht Leuten anhand von OS-Dev das Programmieren beibringen. Es ist schon frustrierend genug, wenn man sein Handwerkszeug kann.
« Letzte Änderung: 12. September 2010, 11:05 von taljeth »
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

Chris Code

  • Gast
Gespeichert
« Antwort #8 am: 12. September 2010, 11:24 »
Hm, wie wär's mit lowlevel.eu? ;)

Du hast ja sowieso darüber nachgedacht, es in ein Wiki zu packen. Da würde es sich anbieten, eine neue Kategorie anzulegen und alles dort drin zu machen. Ansonsten, wenn es doch kein Wiki sein soll, finden wir dafür sicher auch noch irgendwo Platz.

Aber einen Programmierkurs mit einzubauen, halte ich doch für sehr gewagt. Ohne gute Programmierkenntnisse geht es nicht. Dass man die konkreten Sprachen Assembler und C noch ein bisschen behandelt, ist wohl okay. Aber du kannst nicht Leuten anhand von OS-Dev das Programmieren beibringen. Es ist schon frustrierend genug, wenn man sein Handwerkszeug kann.

Also  im Prinzip kann ich ja beides machen.. sowohl wiki als auch pdf denn ich werde eh nicht an einem Tag eine ganze Wikiseite schreiben... und soviel sei gesagt... ich biete diese Kurse (Assembler und C/C++) an damit man Programmieren lernt ;) darum hab ich bereits davon gesprochen das sie sehr ausführlich sein sollen... die haben mit OS dev an dich noch nichts zu tun... aber ich finde das sie in die lowlevelprogrammierung mit rein gehören,.. den ein absoluter newbie muss erst im web schauen und sich mühsam alles zusammen suchen .. mit meinem konzeptvorhaben gehts vieleicht schneller.

 :mrgreen:

AGGROStar1991

  • Beiträge: 29
    • Profil anzeigen
Gespeichert
« Antwort #9 am: 12. September 2010, 11:46 »
Ich finde das Taljeth im prinzip schon recht hat, aber was eine möglichkeit wäre, v.a. für assembler, das man auf ne Trick-sammlung anlegt( bestimmte möglichkeiten was zu beschleunigen oder kleiner zu bekommen, besondere trickige algorithmen.....) da könnte man dann z.B. auch sowas wie ein "Fortgeschrittenen-Tutorial" mit einbauen vllt über themen die normale Tuts weniger behandeln.


nur son denkanstoss. sonst gute Idee Chris Code

mfg

Chris Code

  • Gast
Gespeichert
« Antwort #10 am: 12. September 2010, 11:54 »
Ich finde das Taljeth im prinzip schon recht hat, aber was eine möglichkeit wäre, v.a. für assembler, das man auf ne Trick-sammlung anlegt( bestimmte möglichkeiten was zu beschleunigen oder kleiner zu bekommen, besondere trickige algorithmen.....) da könnte man dann z.B. auch sowas wie ein "Fortgeschrittenen-Tutorial" mit einbauen vllt über themen die normale Tuts weniger behandeln.


nur son denkanstoss. sonst gute Idee Chris Code

mfg

Ich glaube nicht das ich alleine irgendwelche Trickigen Algos hinbekomme die andere Programmierer hier nicht schon kennen^^

AGGROStar1991

  • Beiträge: 29
    • Profil anzeigen
Gespeichert
« Antwort #11 am: 12. September 2010, 11:58 »
das is ja der Sinn an nem Wiki, muss ja net einer allein schreiben ;)
Ich dachte dabei eher an die ASM-pros hier^^


mfg

Chris Code

  • Gast
Gespeichert
« Antwort #12 am: 12. September 2010, 12:04 »
das is ja der Sinn an nem Wiki, muss ja net einer allein schreiben ;)
Ich dachte dabei eher an die ASM-pros hier^^


mfg

Tja da musst du die ASM pros fragen...  :-D nicht nur michich konzentrier mich lieber auf mein vorhaben weil das schon relativ positive beiträge mit sich gebracht hat

Programm Noob

  • Gast
Gespeichert
« Antwort #13 am: 12. September 2010, 13:44 »
Chris Code ich glaube du hast mich miss verstanden. Ich meint edas du ein Magazin zu Computer schreibst, ein Magazin zu Assembler und eins zu C/C++, wenn dann die Nachfrage nach weiteren Programmier-Magazinen ist, kannst du ja noch was dazu machen.

Programm Noob

Svenska

  • Beiträge: 1 792
    • Profil anzeigen
Gespeichert
« Antwort #14 am: 12. September 2010, 14:20 »
Gleich vorweg, meinen anderen Beitrag habe ich gelöscht, weil dabei nichts sinnvolles zu stande kam xD
Sehr schade. Traust du dich nicht, dass andere deine Fehler der Vergangenheit sehen können? Oder hat es dir nicht gefallen, dass die Meinungen im Thread nicht zu dem passten, was du gern gehabt hättest?

Es war nicht der erste Thread dieser Sorte. Die Reaktionen waren ebenfalls dieselben.

Denk mal drüber nach.
</offtopic>

Chris Code

  • Gast
Gespeichert
« Antwort #15 am: 12. September 2010, 15:17 »
Gleich vorweg, meinen anderen Beitrag habe ich gelöscht, weil dabei nichts sinnvolles zu stande kam xD
Sehr schade. Traust du dich nicht, dass andere deine Fehler der Vergangenheit sehen können? Oder hat es dir nicht gefallen, dass die Meinungen im Thread nicht zu dem passten, was du gern gehabt hättest?

Es war nicht der erste Thread dieser Sorte. Die Reaktionen waren ebenfalls dieselben.

Denk mal drüber nach.
</offtopic>

Ich hab den Grund genannt warum ich das Thema gelöscht habe... Und wenn du keine normalen Beiträge schreiben kannst die zum Thema gehören, stattdessen mit deinen Kommentaren kommst die schon in richtung provokation eines Streits gehen dann lass es lieber sein... tuh nicht so als hättest du die ultimative menschenkenntnis.. wahrscheinlich schleischst du hier im forum rum und hinterlässt überall deine kommentare xD

Chris Code

  • Gast
Gespeichert
« Antwort #16 am: 12. September 2010, 15:21 »
Chris Code ich glaube du hast mich miss verstanden. Ich meint edas du ein Magazin zu Computer schreibst, ein Magazin zu Assembler und eins zu C/C++, wenn dann die Nachfrage nach weiteren Programmier-Magazinen ist, kannst du ja noch was dazu machen.

Programm Noob

nein ich hab dich nicht missverstanden und ich schreibe auch mit anderen also solltest du erstmal lesen was andere geschrieben haben.. im mom ist es so das ich bei dem bleibe was ich dir gesagt habe... nur das ich die magazine nicht als pdf sondern als wiki hochlade... alles klar soweit?

Svenska

  • Beiträge: 1 792
    • Profil anzeigen
Gespeichert
« Antwort #17 am: 12. September 2010, 16:32 »
wahrscheinlich schleischst du hier im forum rum und hinterlässt überall deine kommentare xD
Korrekt.

Was die Algorithmen angeht: Eine Übersicht über schnelle Algorithmen für häufige Anwendungsfälle würde ich sehr begrüßen, da ich mich dort nicht besonders auskenne. Diese würde ich allerdings gerade nicht in Assembler sehen wollen, sondern in einer Hochsprache/Pseudosprache.

Assembler ist grundsätzlich komplizierter zu verstehen und CPU-Abhängig, besonders, was die Ausführungsgeschwindigkeit betrifft. Außerdem sind Optimierungen, die für den 8086 galten heute meist nicht mehr aktuell (oder relevant), dafür gibt es ganz neue Klassen von Optimierungen, wie z.B. Cachelokalität, Locking, Copy-On-Write oder auch Scatter/Gather-IO. Soetwas würde ich sehr begrüßen.

Chris: Ich würde es auch mögen, wenn du gelegentlich deinen OS-Status im Forum postest. Das soll keine Wertung sein.

Für das Korrekturlesen erkläre ich mich ebenfalls gern bereit.

Gruß,
Svenska

AGGROStar1991

  • Beiträge: 29
    • Profil anzeigen
Gespeichert
« Antwort #18 am: 12. September 2010, 16:52 »
Naja das mit den Algos kam von mir :P
Und ja ich geb zu, das ich das in ASM vorgeschlagen hab hängt vllt ein bisschen damit zusammen das ASM meine muttersprache ist und ich alles mögliche damit schreibe ^^
aber ich stimm dir schonn zu auch in Hochsprache wär sowas interessant.
aber leider will Chris Code ja keine hilfe also werd weder ich da zu ASM was schreiben kann noch iwer anders zu Hochsprachen ;) aber ich find tdem das das ne Idee ist die man vllt weiterverfolgen sollte, quasi so "tricks und kniffe" kategorien anzulegen, einmal allgemein(pseudocode), einmal speziell für sprachen oder compiler.

könnte man ja mal brainstormen ob noch mehr leute das gut finden.

mfg AGGRO

Chris Code

  • Gast
Gespeichert
« Antwort #19 am: 12. September 2010, 19:12 »

aber ich stimm dir schonn zu auch in Hochsprache wär sowas interessant.
aber leider will Chris Code ja keine hilfe also werd weder ich da zu ASM was schreiben kann noch iwer anders zu Hochsprachen ;) aber ich find tdem das das ne Idee ist die man vllt weiterverfolgen sollte, quasi so "tricks und kniffe" kategorien anzulegen, einmal allgemein(pseudocode), einmal speziell für sprachen oder compiler.

mfg AGGRO

Naja wenn ich keine Hilfe will und bei meinem Vorhaben bleibe , du aber gerne diese tricks und kniffe beschrieben hättest warum machst du das nicht einfach zu deinem projekt? ;) ich würde das thema auch sehr begrüßen aber es ist halt nicht das was ich machen will  :-D

lg

So 2 Fortgeschrittene Programmierer die probelesen reichen mir schon also erkläre ich das thema für abgeschlossen..

Dann könnten wir jetzt eigentlich zum Thema Tricks und Kniffe kommen die das Programmieren vereinfachen sollen

mich würde es freuen wenn AGGROStar1991 mehr ins detail gehen würde... zb. sind das nur quellcodebeispiele oder auch tipps wie man etwas beschleunigen kann etc. ?

 

Einloggen