noobes Posted March 5, 2022 Report Posted March 5, 2022 (edited) SRC: https://github.com/reservedcloud/open98 Un sistem de operare NT-like bazat pe clean room reverse engineering la care am lucrat aprox 3 luni. Este scris in C si foarte putin Assembly (pentru Hardware Abstraction Layer). Edited May 9, 2022 by noobes 3 Quote
Nytro Posted March 5, 2022 Report Posted March 5, 2022 Suna bine! O mica descriere despre cum functioneaza? Cateva detalii despre HAL? Ar fi util ca mai multe persoane sa inteleaga mai bine astfel de lucruri (eu sunt interesat de exemplu). Quote
noobes Posted March 5, 2022 Author Report Posted March 5, 2022 20 minutes ago, Nytro said: Suna bine! O mica descriere despre cum functioneaza? Cateva detalii despre HAL? Ar fi util ca mai multe persoane sa inteleaga mai bine astfel de lucruri (eu sunt interesat de exemplu). Salut, ar fi multe de explicat.. dar incerc sa scriu tot ce este mai important. HAL sau Hardware Abstraction Layer este stratul dintre Software (sistemul de operare) si Hardware (obiectele fizice cum ar fi mouse-ul, tastatura, sau lucruri legate de setarea registrilor in assembly cum ar fi Global Descriptor Table sau Interrupt Descriptor Table). Global Descriptor Table-ul se seteaza folosind assembly, prin instructia LGDT . El este folosit pentru a stabili accessul Userland si Kernel mode. Interrupt Descriptor Table se seteaza prin acelasi mod doar ca prin alta instructie (n-o sa mai intru in detalii). Cu ajutorul lui vom putea activa "interuptii" care vor da fire atunci cand, de exemplu, echivalentul apasarii unei taste este IRQ0. O data apasata tasta, BIOS-ul va da fire la IRQ0. IDT-ul e responsabil sa dea handle la acest interrupt pentru a fi folosit in kernel. OS-ul foloseste Bootloader-ul Limine deoarece e la fel de bun ca GRUB. Bootloader-ul da load la Kernel dintr-o partitie FAT32. OS-ul are ca baza "tematica NT" Windows 98. OS-ul e capabil sa citeasca si sa scrie partitii FAT32. Are suport ACPI, iar sistemul poate fi inchis prin api-ul intern NtShutdownSystem. Are un GUI basic care nu prea da roade cum trebuie dar o sa l repar pe viitor. Poate da handle la exceptii prin miraculosul "Blue Screen of Death". As aprecia daca as primi cate o stea la repository deoarece am lucrat zile intregi. 👍🏻 1 1 Quote
Kev Posted March 6, 2022 Report Posted March 6, 2022 pune-l in categoria [RST] Projects, ce zice @Nytro fac teste 1 Quote