Wpis z mikrobloga

Dobra Mirki, pałka sie przegła.

O co chodzi? Poziom abstrakcji dzisiejszych komputerów mnie po prostu #!$%@?, a ja jestem z tych, którzy lubią wiedzieć jak wszystko działa pod maską.

Jak zaczynałem programować w gimbie to takich problemów nie miałem, bo wtedy sam język wysokiego poziomu był czymś nowym itp. Teraz, kiedy pisze sobie w C, zastanawiam się jak to wszystko działa. Jak działa obsługa plików, jak to jest, że możemy wypisywać dane na ekran za pomocą funkcji puts itp. Ale to zaszło tak daleko, bo zamiast uczyć się faktycznie programowania, technik i algorytmiki, skończyłem na implementacji jakiegoś prymitywnego kernela, którego i tak robiłem w oparciu o jakieś tutoriale. A jeśli chciałbym implemenotwać jakiś prymitywny OS to i tak zabraknie mi wiedzy z algorytmiki i powstaje błędne koło... ( ͡° ʖ̯ ͡°)

Proszę Was o pomoc. Zamiast zaczynać od góry (języki wysokiego poziomu), chciałbym uczyć się od dolu (oczywiście w granicach rozsądku, bo pewne rzeczy i tak będę musiał uznać poprostu za czarną skrzynkę jak np. surowe instrukcje procesora chociaz kto wie?) w taki sposób aby to wszystko zaczeło mi się układać. Nie chciałbym też popadać w paranoje.

Jak sobie z tym poradzić? Jak działa hardware, te wszystkie architektury procesorów itp.?
Jak mogę sobie to uporządkować? Znacie jakieś dobre książki?

Dodam tylko, że teraz dopiero ide na studia, ale nie chce czekać aż zacznie się rok szkolny.

#programowanie
  • 26
  • Odpowiedz
@Malakian: Jeśli interesuje Cię działanie systemów operacyjnych, to polecam klasyka Operating Systems Design and Implementation ze źródłami Minixa, co zainspirowało Linusa Torvaldsa do stworzenia Linuxa. Naprawdę warto się w to zagłębić oraz poeksperymentować. Masz gwarancję, że zrozumiesz działanie wielu fundamentalnych konceptów systemów operacyjnych i wyjdziesz z tego cało (w przypadku Linuxa nie byłbym tego taki pewny).
  • Odpowiedz