• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Bootloader - Assembler

VPS Starter Arubacloud
+1 głos
596 wizyt
pytanie zadane 19 stycznia 2017 w Assembler przez niezalogowany

Witam, korzystając ze stronki LINK stworzyłem prosty bootloader. Wyświetla się napis i restartuje. OK, ale chciałbym jądro pisać w języku C. Czy dałoby się jakoś aby ten bootloader odpalał jądro?

2 odpowiedzi

+1 głos
odpowiedź 19 stycznia 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Dałoby się, musisz wczytać jądro i do niego skoczyć :)

A tak na poważnie - troszkę bida z trybem rzeczywistym - lepiej by było pokombinować z trybem chronionym. Ale dochodzi tutaj A20, GDT i samo wejście w tryb chroniony. Jest trochę z tym roboty. Jeśli potrzebujesz do czegoś bootloader z prawdziwego zdarzenia, to chyba najprościej będzie użyć GRUB, który wspiera standard multiboot. Taki bootloader jak w tym "kursie" jest ubogi i jeszcze daleko mu do czegokolwiek :)

Ale tak, możesz odpalić jądro. Ale pytanie - w jakiej postaci ma się ono znajdować na dysku? Najprościej będzie w tej chwili pewnie po prostu zlinkować je razem z bootloaderem i wczytać z dysku do pamięci jako kolejne sektory i skoczyć w to miejsce w pamięci, ale to też takie kiepskie rozwiązanie. Żeby to było jakieś ogarnięte, to musiałbyś napisać obsługę jakiegoś systemu plików i wczytać jądro z pliku. Sporo może być z tym roboty.
1
komentarz 21 stycznia 2017 przez akasei Obywatel (1,620 p.)
Nie podkładaj mu nogi od razu, najpierw wczyta to jądro, choćby 16 bitowe :P

Połączenie bootloadera i jądra w jeden plik to nie jest kiepski pomysł, sam wiesz ile już mój system potrafi, a zajmuje <25 KiB i JEST dołączony do bootloadera.

System dołączony do bootloadera przy prostym bootloaderze nie może przekraczać ~630 KiB... czyli lata świetlne w moim przypadku. (choć mogę włączyć obsługę z poziomu GRUB'a, bo kod już jest ;)
komentarz 21 stycznia 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)

No spoko, niech wczytuje wink

Ja tam jednak preferuję takie bardziej uniwersalne rozwiązania, no ale co kto woli.

komentarz 21 stycznia 2017 przez akasei Obywatel (1,620 p.)
Dopóki nie będzie miał podstaw, powinien trzymać się z daleka od np. GDT.
komentarz 22 stycznia 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)
No więc skoro w tej chwili to za trudne dla niego, a chce pisać kodzik w C, to najprościej będzie użyć GRUBa ;)
0 głosów
odpowiedź 22 stycznia 2017 przez akasei Obywatel (1,620 p.)

Jeśli to ma być C/C++ to najlepszą studnią wiedzy będzie OSDev Bare Bones

Ogarnięcie tego tematu, zajmie więcej niż tydzień.

Podobne pytania

0 głosów
1 odpowiedź 3,547 wizyt
pytanie zadane 21 października 2017 w Assembler przez Bish0p Obywatel (1,940 p.)
0 głosów
1 odpowiedź 1,991 wizyt
pytanie zadane 19 grudnia 2019 w Assembler przez progNewbie Obywatel (1,130 p.)
0 głosów
1 odpowiedź 238 wizyt
pytanie zadane 27 sierpnia 2018 w Assembler przez Cixo Gaduła (4,070 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...