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
Stefan Lankes
fc17e7710d
simplify pingpong benchmark
2011-05-18 00:37:25 -07:00
Stefan Lankes
08f5153257
add the support of inter core interrupts
2011-05-17 08:13:20 -07:00
Stefan Lankes
7970899fd1
use HALT instead of NOP8
2011-05-17 08:12:56 -07:00
Stefan Lankes
098546fe25
fix typo in the declaration of icc_ping
2011-05-17 08:11:41 -07:00
Jacek Galowicz
58115dc000
New Makefile target: qemudbg
...
This target starts qemu in Debug-Mode and GDB.
There is a GDB-Script file script.gdb which is extensible to match your
debugging needs.
2011-05-16 13:26:49 +02:00
Stefan Lankes
3a0e42eef1
add ping pong test and some bug fixes in the ICC part
2011-04-24 07:27:27 -07:00
Stefan Lankes
29ab43f289
First steps to realize Inter-Core-Communication via RCCE
2011-04-23 00:13:12 -07:00
Stefan Lankes
1157306567
remove typo
2011-04-22 23:19:53 -07:00
Stefan Lankes
eab1480113
remove typo
2011-04-22 09:55:27 +02:00
Stefan Lankes
900c67c2a0
remove obsolete flags
2011-04-22 09:31:33 +02:00
Stefan Lankes
ea4a7477c5
set CR0's MP flag to monitor the coprocessor
2011-04-21 19:46:55 +02:00
Stefan Lankes
6d143c00f7
Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm
2011-04-21 09:40:31 -07:00
Stefan Lankes
a563c756ee
fix bug in the setup of the caching strategy
2011-04-21 09:33:49 -07:00
Stefan Lankes
2a5411c987
fix bug in the initialization of caching strategy
2011-04-21 09:28:56 -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
5d0cf35f4f
Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm
2011-04-21 07:32:42 +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
a3176aac0b
remove bug in the calulation of the break condition
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
Stefan Lankes
d8ad0b8dce
add space to store the FPU context
2011-04-21 07:31:46 +02:00
Jacek Galowicz
a9c4b5ddc0
Encapsulated IDT-/GDT-descriptor configuring code into helper functions.
2011-04-21 07:31:45 +02:00
Stefan Lankes
65d66171d7
add jacobi solver as example program
2011-04-21 07:31:45 +02:00
Stefan Lankes
23313590be
use logical operations instead of / and % to increase the performance
2011-04-21 07:31:45 +02:00
Stefan Lankes
145c2e91be
enables runtime debug messages for RCCE library calls
2011-04-21 07:31:45 +02:00
Stefan Lankes
f25beaa8b0
define that we also load metalsvm.obj to pid 1
2011-04-21 07:31:45 +02:00
Stefan Lankes
a070ac6c5a
add Intel's bin2obj tool
...
- this is part of http://marcbug.scc-dc.com/svn/repository/trunk/linuxkernel/bin2obj
2011-04-21 07:31:44 +02:00
Stefan Lankes
f02655ccda
add fallback code for memcpy
2011-04-21 07:31:44 +02:00
Stefan Lankes
ed22678011
add code to initialize (i)RCCE and to test RCCE
2011-04-21 07:31:44 +02:00
Stefan Lankes
373d663fd0
add iRCCE code
2011-04-21 07:31:38 +02:00
Stefan Lankes
faa41e25e2
add basic support of sbrk and fix bug in saving of the fpu context
2011-04-20 21:23:22 +02:00
Stefan Lankes
8a515c9925
remove bug in the calulation of the break condition
2011-04-20 20:41:51 +02:00
Stefan Lankes
7e0179f5f7
first version to support the FPU
...
- seems to work
- currently, we didn't support SIMD instructions
2011-04-20 15:16:22 +02:00
Stefan Lankes
ea19b15781
- add room to the FPU context
2011-04-20 11:34:52 +02:00
Stefan Lankes
c29e2a8931
Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into jacobi
2011-04-20 07:31:50 +02:00
Stefan Lankes
6e255fe27e
add jacobi solver as example program
2011-04-19 20:18:38 +02:00
Stefan Lankes
3fea08710d
use logical operations instead of / and % to increase the performance
2011-04-19 20:01:18 +02:00
Jacek Galowicz
6a1fdca0ac
Encapsulated IDT-/GDT-descriptor configuring code into helper functions.
2011-04-19 18:51:59 +02:00
Stefan Lankes
a62b4949ee
Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into jacobi
2011-04-19 17:52:26 +02:00
Stefan Lankes
f3972a36c4
enables runtime debug messages for RCCE library calls
2011-04-19 08:36:58 -07:00
Stefan Lankes
7d36bb7ed1
define that we also load metalsvm.obj to pid 1
2011-04-19 08:36:00 -07:00
Stefan Lankes
ed6aa2eca8
add Intel's bin2obj tool
...
- this is part of http://marcbug.scc-dc.com/svn/repository/trunk/linuxkernel/bin2obj
2011-04-19 07:39:53 -07:00
Stefan Lankes
52c924f62a
add fallback code for memcpy
2011-04-19 07:18:35 -07:00
Stefan Lankes
622b403f08
add code to initialize (i)RCCE and to test RCCE
2011-04-19 07:17:51 -07:00
Stefan Lankes
f556608010
- add iRCCE code
2011-04-19 07:17:07 -07:00
Stefan Lankes
df250721b5
use logical operation instead of / and % to increase the performance
2011-04-19 07:23:00 +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
bd703f6be4
avoid compiler errors by using MAX_CORES = 1
2011-04-18 06:44:17 -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
e94c31d03b
add a new IRQ save spinlock implementation
...
- avoids a deadlock
- usable in a interrupt handler
2011-04-18 15:12:18 +02:00