System na jądrze linuxa


(Sebastianmvip) #1

Witam, moje pytanie jest takie, jak napisać system na jądrze linuxa. Wiem że trzeba znać C, ale czy do pisania systemu trzeba:

  • pisać w jakimś folderze i co chwile restartować system

  • jakiegoś programu, który pozwala na pisanie systemu pod linuxa


(Frankfurterium) #2

To prawie jak "Wytłumaczcie mi w trzech zdaniach, jak zbudować wahadłowiec kosmiczny.

Bez owijania w bawełnę - nie bierz się za to. Co roku podobne pytanie zadają dziesiątki tysięcy osób i śmiem twierdzić, że coś sensownemu wychodzi z tego jednemu na parę lat.

System operacyjny, nawet wokół gotowego jądra, to Mount Everest, a po pytaniach sądząc, na razie jesteś na poziomie półmetrowego schodka. Wbrew pozorom najważniejsza jest nie umiejętność programowania, tylko projekt, który ma ręce i nogi. To, w jakim programie piszesz i czy co chwile restartujesz system, to jedne z absolutnie najmniej ważnych kwestii.


(Sebastianmvip) #3

Trochę to głupie. W domu mówią: ,,Nigdy się nie poddawaj'', a tutaj: ,,Nie bierz się za to''


(nnick) #4

No bo zadając takie pytania po prostu mówisz "Nie wiem jak działają i jak są zbudowane systemy operacyjne" Zacznij od książek pokroju "Operating Systems: Design and Implementation" Tanenbauma, zdobądź kilku-klikunastoletnią praktykę w programowaniu i użytkowaniu systemu Linux. Wtedy możesz pomyśleć nad taką zabawą. To co chcesz zrobić to właściwie zaimplementować całe GNU od zera - czyste szaleństwo.


(Sebastianmvip) #5

Racja :frowning:

Mam 1-miesięczną

System linux użytkuję od września 2012 roku, czyli półroku.

A dlaczego czyste szaleństwo :evil:


(nnick) #6

Czyli dosłownie chwilę. Ponadto użytkowanie w sensie - mam pulpit, mam firefoksa - mogę sobie coś tam zdziałać a użytkowanie - potrafię postawić na Linuksie router z QoSem, DHCP i tunelem na racoonie wklepując wszystko z pamięci w terminal to jest spooooora różnica. Miesiąc praktyki w programowaniu to też jest NIC - wiesz chociaż co to malloc?

A dlaczego czyste szaleństwo? Wiesz ile kodu jest potrzebne do odpalenia podstawowego środowiska? Poszukaj sobie na svnach kodu źródłowego coreutils i binutils - to jest absolutne minimum jakie musisz zaimplementować. Dla osoby programującej od miesiąca jest to wyzwanie porównywalne z podróżą na Księżyc w średniowieczu.

Zamiast mierzyć za wysoko i się zrażać bo nic z tego nie wyjdzie zacznij tak jak wszyscy początkujący programiści - jakieś proste algorytmy i struktury danych - sortowanie, drzewa, przeszukiwanie drzew. Jakieś tekstowe bazy danych. Jak kiedyś będziesz o siłach podjąć się takiego wyzwania to sam będziesz to wiedział i bez zadawania takich pytań jak teraz.


(linux_to_syf_^^) #7

I stworzysz dystrybucję numer pierdyliard + 1. Pytanie, czy o to chodziło sebastian22310 :wink:.


(pain3hp) #8

n-ty temat w którym potoczy się dyskusja a autor sam się podda za 2 dni


(mktos) #9

Na nieco wyższym poziomie niż pisanie systemu, ale aby dokładnie poznać Linuksa można zainteresować się Linux from Scratch.