Don't know where to begin

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
AMenard
Member
Member
Posts: 67
Joined: Mon Aug 25, 2014 1:27 pm

Re: Don't know where to begin

Post by AMenard »

Kip Irvine book: Assembly Language for x86 Processors is quite nice for learning assembler but it use the MASM syntax which by itself isn't really a negative especially if you're planning to use the Intel documentation since they also use the MASM syntax in their example.

I use a simple document that explain how to convert from MASM to NASM http://left404.com/2011/01/04/convertin ... to-nasm-3/
User avatar
Satoshi
Member
Member
Posts: 28
Joined: Thu Sep 13, 2012 2:18 pm

Re: Don't know where to begin

Post by Satoshi »

Learn D and ASM (NASM). Makefiles and bash scripting too.
Use GRUB2 as bootloader.
Xamarin Studio (monodevelop) as a IDE.
Use LLVM, LDC2, clang, binutils (maybe LLD) as your basic tools.

Choose x64 as a main arch.
Choose microkernel as your concept of OS.
Start with multiboot2 info, GDT, IDT, TSS, PIT, PIC, paging, virutal/physical memory managers.
Then implement syscalls and thread scheduling.
ext2 and elf parsers/drivers.
create VFS and other daemons.

Look at my kernel (currently not working, switching from monolitic to micro kernel arch).
https://github.com/Rikarin/Trinix/

Study basics of QNX kernel architecture, syscall, message passing, networking, resource managers, etc.

(Just my opinion)
Trinix (written in D) https://github.com/Rikarin/Trinix
Streaming OS development https://www.livecoding.tv/satoshi/
Post Reply