Jak stworzyć własny system?


(DarthVader3105) #1

Chcę spróbować stworzyć własny system. Jakich programów do tego potrzebuję i jakie języki powinienem znać?


(roobal) #2

To Ci zajmie parę lat, patrz jak długo trwa rozwój jądra Linux i systemów na nim opartych. Taki ReactOS od dekady jest wciąż w fazie beta czy nawet alpha. Może na początek zbuduj własną dystrybucję na jądrze Linux, zacznij od Gentoo, ewentualnie LFS.

Programistą nie jestem, ale prawdopodobnie C i Assembler.

Może tu znajdziesz coś dla siebie https://pl.wikibooks.org/wiki/Pisanie_OS/From_zero_to_hero


(DarthVader3105) #3

Dzięki. Jeśli chodzi o dystrybucję Linuxa, to próbowałem na Suse Studio i nie ogarniam tego. :-\


(system) #4

 

Może lepiej daj sobie spokój już napisanie dobrego programu wymaga dużej wiedzy i umiejętności, a co dopiero stworzenie systemu operacyjnego.


(Odyniec_Stary) #5

Porywasz się z motyką na słońce, jeśli nawet nie wiesz jakich programów użyć. 


(fedora24x) #6

Ja sam aktualnie się biore za OSa, i zacząłem go od dokumentacji angielskiej, w której aktualnie tonę.

W pojedynke nie dasz rady. Ja już mam prawie wszytskie standardowe funkcje IO, wielozadaniowość oraz

bardzo prymitywną konsole, bo ograniam jeszcze pomysł rozbudowy sterownika klawiatury :wink: Jest to trudne,

masa adresów i kodu asm(a). Ma wersje prototypową prototypu wersji BETA :smiley: Zacznij od:

SuseStudio -> LinuxFromScratch -> potem własny np. “Od zera do bohatera”


(Paulikpro) #7

 

System(tak naprawdę program bootowalny) można zaprogramować w 10 minut, lecz wątpię, by miał jakąkolwiek wartość…

 

 

 

Suse Studio służy do skonfigurowania obrazu dysku systemu Suse, nie do tworzenia własnej dystrybucji Linuxa. Jeśli nawet tak prostego programu nie możesz pojąć, śmiem twierdzić, iż nie zajdziesz za daleko z takimi “umiejętnościami”…


(DarthVader3105) #8

Odpowiadam po długim czasie, ale żeby nie było to teraz się wziąłem do programowania z innej strony i nawet nieźle mi idzie… :wink:


(Rolek0) #9

Trochę podstaw: https://www.youtube.com/playlist?list=PLGhEqiD7wAd5D-fe-Qz027_1yAH3rFMYF
(są to nagrania ze streamów na żywo, treść zaczyna się zwykle po kilku(nastu) minutach, zwykle w pierwszym komentarzu jest napisane do jakiego momentu przewinąć).
Zauważyłem, że nie wszystkie filmy są na tej playliście, dwa kolejne odcinki: https://www.youtube.com/watch?v=HdeGglJLtqY i https://www.youtube.com/watch?v=cxh-Ebd4uP0
Wszystkie filmy tego autora: https://www.youtube.com/user/GynvaelColdwind/videos


(sultan13771) #10

Masz już jakieś plany na ten system ?


(DarthVader3105) #11

Heh, widzę chciałem odpowiedzieć na jeden komentarz i już lecą odpowidzi. :smiley: Ogólnie to można powiedzieć, że już od ok. miesiąca tworzę system, choć czy systemem to mogę nazwać no to nie wiem :wink: Mam teraz parę książek z programowania, a system na razie robię pod Windowsa, wiem, może zabawnie to brzmi, ale jeszcze nie zagłębiałem się jak napisać bootowalny program, sterowniki, itp., więc chociaż robię coś, co będzie podobnie działać, taki emulator, a potem może go przerobię, żeby się bootował. :wink:

A tak przy okazji to może tutaj parę pytań pozadaję:

  1. Czy pisanie bootowalnego programu wymaga jakiegoś jeszcze kompilatora, itp.?
  2. Czy bootloader musi być pisany w assemblerze?
  3. Czy czcionka konsolowa, która jest np. w DOSie to czcionka DOSowa, czy BIOSowa?
  4. Gdzie znajdę idealne wyjaśnienie i opisanie wszystkich znaków niedrukowalnych ASCII?

(enedil) #12
  1. nikogo nie obchodzi, w czym napiszesz bootloader. Może to nawet być llvm-Brainfuck. Zresztą, nie wiadomo po co chcesz go do cholery pisać - syslinux zadziała.
  2. http://lmgtfy.com/?q=ascii+table+explanation

(DarthVader3105) #13
  1. Tylko czy korzystając z bootloadera linuxowego nie musiałbym mieć systemu open-source lub freeware?
  2. Chodzi mi o konkretne, rozwinięte wyjaśnienie, jaki znak ASCII do czego konkretnie służy, znalazłem raz przetłumaczone nazwy tych znaków niedrukowalnych, niektóre są wyjaśnione na wikipedii, ale mi zależy na czymś obszerny.