Page 132 of 262

Re: What does your OS look like? (Screen Shots..)

Posted: Tue Jun 23, 2015 12:37 pm
by arseniuss
Nothing much here. Just wrote Bochs graphics driver, trying scan PCI and having a bug in memory allocation. I get output through serial port.

Today wrote dynamic module(driver) building makefile.

Image

Re: What does your OS look like? (Screen Shots..)

Posted: Thu Jul 02, 2015 4:47 am
by makerimages
I've made a little more progress on OS Zin : converted to C, finished ACPI, and now, i implemented a very rough PS/2 keyboard driver.
If anyone would like to tinker away on improving the keyboard driver to support caps, shift and so on, please do let me know.

Image


Sources available on GitHub

Re: What does your OS look like? (Screen Shots..)

Posted: Tue Jul 07, 2015 9:46 pm
by BrightLight
Virtual memory management, yaay! :P
Took almost a whole day to work out the paging tables, but I think it's safe to say, I did it! :)
What you see in the screenshot is done simply with this code:

Code: Select all

	; identify page the first MB of RAM
	mov eax, 0				; map 0x0 --
	mov ebx, 0				; -- to 0x0
	mov ecx, 256				; 256*4 KB blocks = ~ 1 MB
	call vmm_map_memory

	; this is just for debugging, will be removed
	mov eax, 0x100000			; map 0x100000 (1 MB) --
	mov ebx, 0xC0000000			; -- to 0xC0000000 (3 GB)
	mov ecx, 2				; 2*4 KB blocks = 8 KB
	call vmm_map_memory

Re: What does your OS look like? (Screen Shots..)

Posted: Sun Jul 12, 2015 10:24 am
by reload
Image
I working on my own OS.
I got working:
  • GDT
    IDT
    PIT
    Keyboard input and vga output

Re: What does your OS look like? (Screen Shots..)

Posted: Thu Jul 16, 2015 8:52 pm
by BASICFreak
The best sign you can have after working for a week on a boot loader!

1. You modify about 20 lines in the kernel to remove all GRUB Compatibility and place your own.
2. And RUN FOR THE FIRST TIME (with the kernel that is)

Code: Select all

BOS v. 0.0.2	SRC/SYSTEM_x86/GDT.c	Compiled at 15:10:22 on Jul 15 2015	MAIN	  Line 18	Function "_GDT_init"
GDT Installed
BOS v. 0.0.2	SRC/SYSTEM_x86/IDT.c	Compiled at 14:43:27 on Jul 13 2015	MAIN	  Line 348	Function "_IDT_init"
IDT Installed
BOS v. 0.0.2	SRC/SYSTEM_x86/8259.c	Compiled at 14:43:28 on Jul 13 2015	MAIN	  Line 141	Function "_8259_INIT"
8259 PIC Installed
PIT Installed
BOS v. 0.0.2	SRC/MEM/PHYS.c	Compiled at 21:33:47 on Jul 16 2015	MAIN	  Line 90	Function "PHYSMEM_init"

	Total RAM = 32383 KB
	Used  RAM = 1203 KB
	Free  RAM = 31180 KB
BOS v. 0.0.2	SRC/MEM/PAGEFAULT.c	Compiled at 14:43:29 on Jul 13 2015	MAIN	  Line 67	Function "_pageFault_init"
BOS v. 0.0.2	SRC/MEM/VIRTUAL.c	Compiled at 14:43:29 on Jul 13 2015	MAIN	  Line 81	Function "VIRTUALMEM_init"

	Total RAM = 32383 KB
	Used  RAM = 1207 KB
	Free  RAM = 31176 KB
(SRC/MEM/VIRTUAL.c:55) MakeDirectory()	=	0x11A000

	Total RAM = 32383 KB
	Used  RAM = 1211 KB
	Free  RAM = 31172 KB

	Total RAM = 32383 KB
	Used  RAM = 1215 KB
	Free  RAM = 31168 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x11C000

	Total RAM = 32383 KB
	Used  RAM = 1219 KB
	Free  RAM = 31164 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x11D000

	Total RAM = 32383 KB
	Used  RAM = 1223 KB
	Free  RAM = 31160 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x11E000

	Total RAM = 32383 KB
	Used  RAM = 1227 KB
	Free  RAM = 31156 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x11F000

	Total RAM = 32383 KB
	Used  RAM = 1231 KB
	Free  RAM = 31152 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x120000

	Total RAM = 32383 KB
	Used  RAM = 1235 KB
	Free  RAM = 31148 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x121000

	Total RAM = 32383 KB
	Used  RAM = 1239 KB
	Free  RAM = 31144 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x122000

	Total RAM = 32383 KB
	Used  RAM = 1243 KB
	Free  RAM = 31140 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x123000

	Total RAM = 32383 KB
	Used  RAM = 1247 KB
	Free  RAM = 31136 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x124000

	Total RAM = 32383 KB
	Used  RAM = 1251 KB
	Free  RAM = 31132 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x125000

	Total RAM = 32383 KB
	Used  RAM = 1255 KB
	Free  RAM = 31128 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x126000

	Total RAM = 32383 KB
	Used  RAM = 1259 KB
	Free  RAM = 31124 KB
(SRC/MEM/VIRTUAL.c:46) MakeTable()	=	0x127000

	Total RAM = 32383 KB
	Used  RAM = 1267 KB
	Free  RAM = 31116 KB
0	_API_Add_Symbol("outb", 0x100160);
1	_API_Add_Symbol("inb", 0x100170);
2	_API_Add_Symbol("outw", 0x100180);
3	_API_Add_Symbol("inw", 0x100190);
4	_API_Add_Symbol("outl", 0x1001A0);
5	_API_Add_Symbol("inl", 0x1001B0);
6	_API_Add_Symbol("newHandler", 0x1045E0);
7	_API_Add_Symbol("strlen", 0x100500);
8	_API_Add_Symbol("streql", 0x100520);
9	_API_Add_Symbol("strcmp", 0x100570);
10	_API_Add_Symbol("strcpy", 0x1005C0);
11	_API_Add_Symbol("stringf", 0x1006E0);
12	_API_Add_Symbol("malloc_page", 0x105870);
13	_API_Add_Symbol("calloc_page", 0x105C80);
14	_API_Add_Symbol("malloc_page_low", 0x105CB0);
15	_API_Add_Symbol("calloc_page_low", 0x105FA0);
16	_API_Add_Symbol("free_page", 0x105FD0);
17	_API_Add_Symbol("AddPage", 0x106600);
18	_API_Add_Symbol("DelPage", 0x106700);
19	_API_Add_Symbol("_API_Add_Symbol", 0x106940);
20	_API_Add_Symbol("_API_Get_Symbol", 0x1068F0);
21	_API_Add_Symbol("DEBUG_printf", 0x1009C0);
22	_API_Add_Symbol("INT", 0x106990);
23	_API_Add_Symbol("memcpy", 0x1001C0);
24	_API_Add_Symbol("memset", 0x1002A0);
25	_API_Add_Symbol("memsetw", 0x100410);
API Installed
End of Kernel Data = 0x110928
Bottom of Kernel Stack = 0x10F000
Loading Boot Time Modules...
	Total RAM = 32383 KB
	Used  RAM = 1271 KB
	Free  RAM = 31112 KB
BOS v. 0.0.2	SRC/MAIN.c	Compiled at 14:43:29 on Jul 13 2015	HAL	  Line 10	Function "main"

	Total RAM = 32383 KB
	Used  RAM = 1303 KB
	Free  RAM = 31080 KB
26	_API_Add_Symbol("HAL_ReadDev", 0x110968);
27	_API_Add_Symbol("HAL_WriteDev", 0x1109F8);
28	_API_Add_Symbol("HAL_RegisterDev", 0x110B58);
29	_API_Add_Symbol("HAL_UnregisterDev", 0x110A78);
30	_API_Add_Symbol("HAL_UnregisterDevByID", 0x110BD8);
31	_API_Add_Symbol("HAL_GetDevByName", 0x110C28);
32	_API_Add_Symbol("HAL_GetDev", 0x110AA8);
33	_API_Add_Symbol("HAL_NewDev", 0x110AE8);

	Total RAM = 32383 KB
	Used  RAM = 1307 KB
	Free  RAM = 31076 KB

	Total RAM = 32383 KB
	Used  RAM = 1311 KB
	Free  RAM = 31072 KB
34	_API_Add_Symbol("PCI_GetDevice", 0x113768);
35	_API_Add_Symbol("PCI_SetHAL", 0x1137B8);
36	_API_Add_Symbol("PCI_GetBaseAddr", 0x1137D8);
37	_API_Add_Symbol("PCI_GetINTLine", 0x113808);
Bus:Slot:Function	Vendor	Device	Class	SubClass	HeadType	BaseAddr	INTLine
PCI_0_0_0		0x8086	0x1237	0x6	0x0	0x0	0x0	0x0
PCI_0_1_0		0x8086	0x7000	0x6	0x1	0x80	0x0	0x0
PCI_0_1_1		0x8086	0x7010	0x1	0x1	0x0	0x0	0x0
PCI_0_1_3		0x8086	0x7113	0x6	0x80	0x0	0x0	0x9
PCI_0_2_0		0x1234	0x1111	0x3	0x0	0x0	0xC0000008	0x0

	Total RAM = 32383 KB
	Used  RAM = 1315 KB
	Free  RAM = 31068 KB
BOS v. 0.0.2	SRC/MAIN.c	Compiled at 14:43:29 on Jul 13 2015	VFS	  Line 12	Function "main"

	Total RAM = 32383 KB
	Used  RAM = 1323 KB
	Free  RAM = 31060 KB

	Total RAM = 32383 KB
	Used  RAM = 1331 KB
	Free  RAM = 31052 KB
38	_API_Add_Symbol("VFS_OpenFile", 0x116368);
39	_API_Add_Symbol("VFS_ReadFile", 0x1163A8);
40	_API_Add_Symbol("VFS_WriteFile", 0x116428);
41	_API_Add_Symbol("VFS_CloseFile", 0x1164A8);
42	_API_Add_Symbol("VFS_RegisterFileSystem", 0x1166B8);
43	_API_Add_Symbol("VFS_UnregisterFileSystem", 0x1167F8);
44	_API_Add_Symbol("VFS_ReadPartition", 0x1165B8);
45	_API_Add_Symbol("VFS_WritePartition", 0x116638);
46	_API_Add_Symbol("VFS_RegisterPartition", 0x116748);
47	_API_Add_Symbol("VFS_Mount", 0x116518);
48	_API_Add_Symbol("VFS_UMount", 0x116858);
DONE!
*Output via Bochs port

All memory management works, all modules are loaded, everything runs just like it did with GRUB, but I'm in a video mode.

I still should (but probably won't) change how my boot configuration file looks:

Code: Select all

V032002580110
R
DBIN        
KKERNEL  ELF
R
DBIN        
MHAL     DLL
R
DBIN        
MPCI     DLL
R
DBIN        
MVFS     DLL
B
Yes those names are 11 characters each



EDIT: Fixed typo's

Re: What does your OS look like? (Screen Shots..)

Posted: Sun Jul 26, 2015 4:16 am
by BrightLight
It's exactly what it says... :) Sorry if I post here too often. :D
Sources on GitHub. LD linker script was modified from BareMetal OS, everything else was written by me.
Both programs and the shell run in ring 3.

EDIT: It's just a prototype of my C library.

Re: What does your OS look like? (Screen Shots..)

Posted: Wed Jul 29, 2015 1:44 am
by bace
This forum post is so useful for getting motivated for more OS development =D>
I need to work on my kernel again :D

Re: What does your OS look like? (Screen Shots..)

Posted: Tue Aug 04, 2015 6:49 am
by wraund
Almost embarrassed by the lack of screen output! Currently I output important debug events to serial, and just use GDB and breakpoints for everything else.

Just managed to get threading working properly (after debugging a horrible problem with my memory manager that caused seemingly random page faults and wierd addresses). The animation below shows 30 threads running simultaneously!

Image

Features:
  • Threads
    Processes
    Paging
    Interrupts
    PIC / PIT
    Error handling via C++ Exceptions
    A horribly broken WIP memory manager
Next up i need to fix the memory manager and start working on loading kernel modules!

Re: What does your OS look like? (Screen Shots..)

Posted: Thu Aug 06, 2015 9:07 pm
by klange
Image
Image

Re: What does your OS look like? (Screen Shots..)

Posted: Fri Aug 07, 2015 12:10 am
by BASICFreak
Ever had that moment where you realized the back-end you have made will be suitable?

After planning around 100 designs for HAL/VFSs I Decided it was time to try one.
Wasn't quite sure it would work out but after getting (some of) the FAT drivers in place, and fixing multiple page fault exceptions, I was thrilled to see:

Code: Select all

... ... ...
Cluster = 0xB	Start = 0x5400	Length = 0x200
Current Cluster Data:
52 A 44 42 49 4E 20 20 20 20 20 20 20 20 A 4B 4B 45 52 4E 45 4C 20 20 45 4C 46 A 4D 44 4D 41 20 20 20 20 20 44 4C 4C A 4D 46 44 43 20 20 20 20 20 44 4C 4C A 4D 46 41 54 20 20 20 20 20 44 4C 4C A 56 30 33 32 30 30 32 35 38 30 31 31 30 A 42 A 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

BOOT.CFG:
R
DBIN        
KKERNEL  ELF
MDMA     DLL
MFDC     DLL
MFAT     DLL
V032002580110
B

.DONE!

It is a simple output of a simple (text) file located at /fdc/boot/boot.cfg

Well, next time you see me here I will be booting of HDD and have a (should I say) GUI (probably not as it will be in dev, but it will have visual output...)

Re: What does your OS look like? (Screen Shots..)

Posted: Thu Aug 13, 2015 8:30 pm
by gardinirafael
Running at ARM Cortex M3 LPC1768 using UART0 driver.
Builtin applications:
Image
Result of standard commands
Image


Running at x86-32 using Bochs.
Image

Image

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Aug 15, 2015 12:40 pm
by BrightLight
I just thought, what's the point of having a mouse driver without a drawing program?
The black square is the mouse cursor, and it appears on top of all other objects. :)

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Aug 15, 2015 2:18 pm
by Techel
@omarrx024: nice os, but the link to your website results in a 403 ;)

Re: What does your OS look like? (Screen Shots..)

Posted: Sat Aug 15, 2015 2:19 pm
by BrightLight
Roflo wrote:@omarrx024: nice os, but the link to your website results in a 403 ;)
Because the view limit has been reached, I'm working on GitHub Pages now. But I'm working too much in the OS and not in the site, lol.

Re: What does your OS look like? (Screen Shots..)

Posted: Sun Aug 16, 2015 7:29 am
by spider75
klange wrote:Image
Image
Your OSes are amazing!