Операционная система
Автор: Кирилл Полежаев
Первые шаги... Операционная система.
ZUXIS - так я назвал своё детище.
Не спрашивайте почему, я стесняюсь. Потом как нибудь расскажу.
Код выкладываю сюда. Если что, давайте смело её менять, модифицировать. Её или, если предложите идею умней (Linuxы, Unixы, Windowsы, MacOSы, OS/2сы, DOSы не предлагать), я вам повинуюсь. Если что, меняйте всё, только согласовано! Это основная концепция!
[29.01.2008]: Начался суръёзный кодинг.
Вот начальный код на асме:
;================================ ; ; OS Zuxis VE ; (C)2007-2008 Polezhayev Kyrylo ; ;================================ org 0x7c00 use16 ; Real mode loader jmp short rml nop rml: xor ax, ax cli mov ss, ax mov sp, rml sti mov ds, ax mov es, ax mov ch, 0 mov bx, 0x7e00 mov ah, 0x02 mov al, 17 mov cl, 2 mov dl, 0 mov dh, 0 int 0x13 jmp 0x7e00 db 474 dup 0 db 0xaa, 0x55 org 0x7e00 ; Protected mode loader pml: cli mov al,00010001b out 0x20, al mov al, 0x20 out 0x21, al mov al, 00000100b out 0x21, al mov al, 00000001b out 0x21, al ; Enable A20 in al, 0x92 or al, 2 out 0x92, al lgdt [gd_reg] push word 0 popf ; Enable protected mode mov eax, cr0 or al, 1 mov cr0, eax jmp 16:_protected use32 _protected: mov ax, 1000b mov es, ax mov ds, ax mov ss, ax
6 января 2008 (Обновление: 29 янв 2008)