Commit graph

268 commits

Author SHA1 Message Date
Stefan Lankes
5cd3d7557a fine tuning to increase the performance of the mailbox example 2011-07-02 03:13:24 -07:00
Simon Pickartz
39b79506bf Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into mailbox_integration 2011-06-22 19:51:21 +02:00
Marian Ohligs
2a23f30963 Merge branch 'master' into ohligs 2011-06-12 12:02:24 +02:00
Simon Pickartz
f6fed124b6 use interrupts+anylength_call now 2011-06-09 04:23:17 -07:00
Stefan Lankes
9085bb67e4 fix typo 2011-06-09 08:29:06 +02:00
Stefan Lankes
393808e198 fix bug in the initializtion of the BSS section
- DO NOT LONGER USE the compiler flag "-fno-zero-initialized-in-bss"
2011-06-09 08:18:12 +02:00
Generic account for RWTHAachen Students
fbd30d8f5a testing mail_check 2011-06-08 09:23:05 -07:00
Generic account for RWTHAachen Students
bba87c8e27 bug fix in mail_ping 2011-06-07 05:53:16 -07:00
Marian Ohligs
d92515f02a Merge branch 'master' into ohligs 2011-05-30 22:48:00 +02:00
Jacek Galowicz
7fdb044e9a Encapsulated FPU restore instructions.
There is a new procedure restore_fpu_state() in
arch/x86/include/asm/tasks_types.
Will need this code in lguest, too.
2011-05-30 11:22:54 +02:00
Marian Ohligs
83f5a4c426 Merge branch 'master' into ohligs
Conflicts:
	.gitignore
2011-05-29 11:20:49 +02:00
Stefan Lankes
cdd16a2b9f add the SSE support
=> context switch stores also the SSE registers
2011-05-28 23:35:46 +02:00
Jacek Galowicz
394befa3a8 Color management for procedures using vga_putchar
As seen in some BSD operating systems, you can now push and pop foreground and background colors onto a stack to change the colors you see on the screen whenever kprintf/kputchar is used.

This could become useful if one wants to see kernel space kprintfs in other colors than user space printfs or error messages in red and other debugging purposes.

Beware: This is just a small and dirty hack which protects the colorstack with locks and so on. But on task switching the color will not be switched. That makes different colors for different colors persistent for all the time difficult/impossible. But I considered adding colors to the task structures a bit overdone for a small debugging-help.

[Sorry for those commit-and-pull-back-mails. Forgot that I had this stuff on the master branch while pushing my own branch onto the server.]
2011-05-25 09:26:00 +02:00
Marian Ohligs
3cf6180196 fix some strange behavior with backspace 2011-05-24 00:56:21 +02:00
Marian Ohligs
8651593758 bug fix in fb.c 2011-05-23 13:42:26 +02:00
Marian Ohligs
4f0bc05a74 add basic support of scanf, get ... 2011-05-23 12:56:14 +02:00
Stefan Lankes
08f5153257 add the support of inter core interrupts 2011-05-17 08:13:20 -07:00
Stefan Lankes
ea4a7477c5 set CR0's MP flag to monitor the coprocessor 2011-04-21 19:46:55 +02:00
Stefan Lankes
a563c756ee fix bug in the setup of the caching strategy 2011-04-21 09:33:49 -07:00
Stefan Lankes
f3b620a9be add rudimental support of the system call times
- no full support of the POSIX API
- however, the libc function clock works correctly
2011-04-21 10:13:58 +02:00
Stefan Lankes
0c411fd702 add basic support of sbrk and fix bug in saving of the fpu context 2011-04-21 07:32:20 +02:00
Stefan Lankes
7cb05d8f4a first version to support the FPU
- seems to work
- currently, we didn't support SIMD instructions
2011-04-21 07:32:10 +02:00
Jacek Galowicz
a9c4b5ddc0 Encapsulated IDT-/GDT-descriptor configuring code into helper functions. 2011-04-21 07:31:45 +02:00
Stefan Lankes
4fc507bc6b fix bug in the TSS initialization for a new task, which is a copy of the current task 2011-04-18 12:18:59 -07:00
Stefan Lankes
68564c3238 Merge branch 'tests'
Conflicts:
	include/metalsvm/spinlock.h
	include/metalsvm/spinlock_types.h
	kernel/tasks.c
2011-04-18 15:36:22 +02:00
Stefan Lankes
68281c8ad0 cosmetic changes, minor code optimization 2011-04-18 15:10:24 +02:00
Stefan Lankes
47f37e3b00 use memory barriers instead of read memory barriers to determine the current TSC
=> more accurate caclculation of the timer frequency
+ minor cosmetic changes
2011-04-18 15:07:45 +02:00
Stefan Lankes
624afd187c by entering a system call, we need also to push the segment descriptor on the stack 2011-04-18 15:05:27 +02:00
Stefan Lankes
04a0dfb114 enable the support of the system call "fork"
remove obsolete file
2011-04-18 15:03:35 +02:00
Jacek Galowicz
b9b7841dc3 Moved IDT related structs from idt.c to idt.h. 2011-04-15 15:08:41 +02:00
Stefan Lankes
b5908af744 Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into doxygen
Conflicts:
	.gitignore
	arch/x86/include/asm/apic.h
	arch/x86/include/asm/page.h
	arch/x86/include/asm/processor.h
	arch/x86/kernel/idt.c
2011-04-14 08:40:52 +02:00
Stefan Lankes
0fbf2df5ac use inline assembler to load the IDT 2011-04-08 10:45:26 -07:00
Stefan Lankes
e3e06fe523 set APICID of the boot processor to 0 2011-04-08 16:02:29 +02:00
Stefan Lankes
ab78beb859 cosemtic changes 2011-04-08 16:02:28 +02:00
Stefan Lankes
ea5b7e4930 reset APIC before timer initialization 2011-04-08 16:02:01 +02:00
Stefan Lankes
e96a549349 more accurate calculation of the processor frequency 2011-04-08 16:01:54 +02:00
Stefan Lankes
e599063dd2 cosmetic changes 2011-04-05 11:37:20 +02:00
Stefan Lankes
b46664b375 increasing the readability 2011-04-05 11:33:41 +02:00
Stefan Lankes
e8abd6f336 minor improvements and cosmetic changes to increase the readability 2011-04-05 02:00:02 -07:00
Jacek Galowicz
f411498368 Commented another bunch of header files. 2011-04-04 18:12:08 +02:00
Jacek Galowicz
dfe2c817de Continued the small documentation journey.
Edited Doxyfile - will show static functions and vars now, because some
of them were interesting for documentation.
2011-04-04 11:27:49 +02:00
Jacek Galowicz
60fd07542f Documented GDT and IDT files and optimized doxygen-output by fixing
__attribute__ misparsings as structure names
2011-04-03 20:46:53 +02:00
Stefan Lankes
f14c693e10 fix bug in the routine, which calculates the apic timer frequecy 2011-04-01 00:24:03 -07:00
Stefan Lankes
fb215aca47 redesign of the SCC bootloader and rename kernel file to metalsvm.elf 2011-03-31 12:50:42 -07:00
Stefan Lankes
017233d7df use .text instead of .code section 2011-03-31 12:38:04 -07:00
Stefan Lankes
f9ec7ccadc redesign of the SCC's init routines 2011-03-25 20:28:43 +01:00
Stefan Lankes
1a141d9dc9 create a separate directory for SCC specific code 2011-03-24 07:13:55 +01:00
Stefan Lankes
de9fb1fc65 use for debugging the normal C callig convention!
=> no using of compiler flags -fomit-frame-pointer
=> definition of the macro WITH_FRAME_POINTER
2011-03-22 22:11:43 +01:00
Stefan Lankes
ed29ee444a minor optimization in our assembler code 2011-03-08 14:39:21 +01:00
Stefan Lankes
6613b13c1c cosmetic changes 2011-03-07 20:04:44 +01:00