-
Notifications
You must be signed in to change notification settings - Fork 0
catterpiler74/gr8os
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
************* To build your own image *************
1. Build the loader if you have modified it. To do this, built sequentially
bootcode.asm and then grldr.asm
2. Build the kernel. To do this, build the project kernel\kernel.vcproj
3. Make bootable image with script makeimage.cmd
4. Enjoy the image located at image\floppy.ima ;)
************ To run GR8OS **************
1. Set image\floppy.ima as the floppy image for the virtual machine
2. Boot the virtual machine from floppy
3. Enjoy =)
I.e., for QEMU:
qemu.exe -L . -m 128 -fda D:/soft/gr8os/image/floppy.ima -localtime -M pc
Optionally you can add -s option to QEMU to activate gdbserver.
NB: Now this image works on QEMU, Bochs and VMware Workstation.
************ Source files layout: **************
\image
this directory will be created during build and the appropriate
files will be copied there. Then, the FAT12 floppy image will be
created from this directory.
\kernel
kernel sources.
\builtin
built-in kernel drivers for floppy, hard disk, cdrom and FAT FSD driver
\inc
include files
\Release
output object files
exc386.asm
Assembler source for hardware exceptions support
irq386.asm
Assembler source with basic IRQ handlers
ke386.asm
Assembler source with some low-level KE & HAL routines.
ps386.asm
Low-level part of the processes and threads manager
cc.cpp
Cache manager
ex.cpp
Executive subsystem: kernel heap, high-level synch objects.
except.cpp
High-level support for software exceptions, SEH, __try/__except/__finally blocks
hal.cpp
Hardware Abstration Layer
init.cpp
Initialization routines, KiInitSystem is the main.
io.cpp
Input/Output support.
kd.cpp
DBGKD built-in debugger
kernel.cpp
General kernel routines.
mm.cpp
Memory Management routines
ob.cpp
Objective subsystem.
precomp.cpp
Precompiled header source
ps.cpp
Processes and threads manager
runtime.cpp
Some RTL routines.
kernel.res
Compiled resource script
kernel.def
Kernel module definition file
kernel.sln
MS Visual Studio solution
kernel.ncb
MS Visual Studio intellisense database
kernel.vcproj
MS Visual Studio project file
\loader
OS loader source
bootcode.asm
bootsector loader source
grldr.asm
OS loader main source
auxmacro.inc
Some useful macroses for fasm
except.inc
Exceptions handling
interrupts.inc
Software interrupts handling
irq.inc
Hardware interrupts handling
kernel.inc
Some mini-kernel routines, that are not used for a long
time.. This file will be deleted in later versions
krnldbg.inc
Debug output
mm.inc
PE headers (do not look at the file name :D)
paging.inc
Paging support for protected mode
pestruc.inc
PE headers #2.. (do not look at the mm.inc :DD) This file will be deleted later.
realmode.inc
Unused routines to switch back to the real mode
runtime.inc
Some useful runtime for loader
tasks.inc
processor control block definition (do not look at the file name again... xD)
tss.inc
TSS support
gr8os.bxrc
Bochs configuration for the GR8OS
kernel.exe
kernel binary
kernel.exp, kernel.lib, kernel.pdb
some files generated by linker. they are used by drivers
makefd.exe
Utility that generates FAT12 image from the specified directory.
makeimage.cmd
Script that builds bootable image from kernel and loader binaries
message.txt
Some message that FAT driver reads for example.
README.txt
This file
About
Automatically exported from code.google.com/p/gr8os
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published