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

Bootloader - Assembler

Object Storage Arubacloud
+1 głos
605 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,594 wizyt
pytanie zadane 21 października 2017 w Assembler przez Bish0p Obywatel (1,940 p.)
0 głosów
1 odpowiedź 2,033 wizyt
pytanie zadane 19 grudnia 2019 w Assembler przez progNewbie Obywatel (1,130 p.)
0 głosów
1 odpowiedź 242 wizyt
pytanie zadane 27 sierpnia 2018 w Assembler przez Cixo Gaduła (4,070 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 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

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy 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!

...