Wracam powoli do normalnej strefy czasowej, więc czas i również wrócić na bloga. Na początek kilka krótkich newsów:
  • Livestream (OSDev #2)
    Środa 11.05 godzina 19:00 na http://gynvael.coldwind.pl/live (czyli na YT). Dodam, że kanał IRCowy moich livestreamów wydaje się nadal żyć - #gynvaelstream @ irc.freenode.org - w tym momencie lista nicków liczy 60 osób i często jest dość aktywnie. Na marginesie dodam, że przed podcastem / w przerwie pojawi się w końcu bardziej sensowna muzyka - w tym miejscu podziękowania dla nervous_testpilot!

  • Phrack 69
    Wyszedł nowy numer legendarnego zina Phrack: http://phrack.org/issues/69/1.html - nic dodać, nic ująć. Miłej lektury :)

  • CONFidence 2016
    Jak już kilka razy wspominałem, 19-20 maja odbywa się konferencja CONFidence w Krakowie. M.in. będzie można pograć w naszego CTFa (jeopardy, trochę ponad 24h, team (4 osoby), rankingowy) - główną nagrodą jest 10k PLN (team z drugiego miejsca otrzymuje 5k PLN, a z trzeciego 2k PLN). CTF jest otwarty dla wszystkich uczestników konferencji; trochę więcej szczegółów można znaleźć na tej podstronie.
    Ktoś się wybiera na CONFidence btw?

  • Dragon Sector TOP3 na finałach 0CTF 2016
    DS wystąpił w składzie adam_i, j00ru, mak, Redford, q3k oraz valis na finałach 0CTF w Szanghaju - wymienieni gracze wywalczyli trzecie miejsce - świetna robota panowie :)

I póki co tyle. Dodam, że mam w tym momencie zaległości w odpowiedzi na korespondencję około 3-4 tygodni, które staram się nadrobić, ale jeszcze chwilę to potrwa.

Comments:

2016-05-13 09:35:25 = mzgreen
{
Jak daleko zamierzasz dojść w streamie osdev? Mimo, że powoli to idzie to seria jest bardzo ciekawa. Fajnie by było jak byś pokazał implementację systemu plików i doszedł przynajmniej do etapu gdzie można odpalać kod w C ;)
}
2016-05-14 11:16:57 = Gynvael Coldwind
{
@mzgreen
Kod w C powinien pojawić się w następnym odcinku (ew. w jeszcze kolejnym, jeśli przeskoczenie w tryb 64-bit zajmie mi dużo czasu).

Co do systemu plików, to chciałbym, żeby się to pojawiło. Jest z tym jeden "drobny" problem, mianowicie już w 32-bitowym trybie dostęp do API BIOSowego od dysków jest utrudniony; w 64-bitowym trybie prościej nie jest. Będzie trzeba to więc rozwiązać na jeden z dwóch sposobów:
1. Przełączanie procesora w tryb 16- lub 32-bitowy, żeby skorzystać API oferowanego przez BIOS - tego bym nie chciał robić.
2. Napisanie sterownika do kontrolera (S)ATA i dysku twardego. Sam protokół ATA trudny nie jest (przy okazji jakiegoś CTFa się tym bawiłem), natomiast nie mam pojęcia o kontrolerach.

Alternatywnie będzie można zrobić ramdysk z jakimś systemem plików z dołączonego obrazu, a potem wczytać go z loadera do pamięci póki ten jest w 16-bitowym trybie (wtedy jest trochę zabawy z dostaniem się do fragmentów pamięci powyżej 1MB, ale jest na to kilka sposobów).

Zobaczymy jak wyjdzie :)

Co do głównego pytania, póki co będę chciał uruchomić kernel w C, włączyć stronicowanie pamięci i zbudować wszystko co potrzeba do stworzenia wątku w trybie użytkownika. W międzyczasie pewnie pojawi się potrzeba zaimplementowania obsługi pewnych podstawowych urządzeń (typu klawiatura - na szczęście jest SMM i nie trzeba USB implementować; lub PIT).

Natomiast pewnie za kilka odcinków zrobię jakąś przerwę od OSDev na 2-3 inne odcinki, tak żeby zbyt monotematycznie nie było. Ale tu nie mam żadnego konkretnego planu - zobaczymy jak wyjdzie :)



}
2016-05-17 20:50:11 = PsychoX
{
Chciałem zapytać o konfiguracje bochs'a. Chciałem szukać, ale pomyślałem, że najlepsza będzie taka jak Twoja :)

Dlaczego nie ma wyszukiwania w blogu? :/
}
2016-05-17 20:53:14 = Gynvael Coldwind
{
@PsychoX
Wszystkie pliki ze streamów wiszą na moim GitHubie :)
https://github.com/gynvael/stream/blob/master/009-osdev-02/osdev.bochsrc

Co do wyszukiwania na blogu - można użyć google - wystarczy, że dopiszesz do zapytania frazę:
site:http://gynvael.coldwind.pl/

Np.:
site:http://gynvael.coldwind.pl/ netsock
}

Add a comment:

Nick:
URL (optional):
Math captcha: 9 ∗ 3 + 5 =