Commit graph

263 commits

Author SHA1 Message Date
Marian Ohligs
a02b596580 - stdin blocks itself util kb has got the input message 2011-08-07 10:20:46 +02:00
Marian Ohligs
8591645bb3 - bug fix 2011-08-06 19:05:46 +02:00
Marian Ohligs
cdc6707852 Merge branch 'master' into ohligs
- one more bug: block_task is missing

Conflicts:
	include/metalsvm/tasks_types.h
	kernel/main.c
	kernel/tasks.c
2011-08-06 17:51:48 +02:00
Stefan Lankes
a179ded21b redesign of the timers, support of timeouts in mailboxes and semaphores 2011-08-06 15:55:34 +02:00
Stefan Lankes
387ef0ea9b cosmetic changes 2011-08-04 16:48:04 +02:00
Stefan Lankes
22441375bb add blocking timers
only the idle tasks use the polling mode
2011-08-03 21:41:06 +02:00
Stefan Lankes
452aa3b1d1 cosmetic changes and add some scheduling statistics 2011-08-03 19:37:05 +02:00
Marian Ohligs
5af1ae0386 Merge branch 'master' into ohligs 2011-08-03 10:43:10 +02:00
Stefan Lankes
577300919c fix bug in search_apic and uses function to find the MP Config Table 2011-08-03 07:37:57 +02:00
Stefan Lankes
f4dd038ee5 save and restore segment registers
=> this fixed a bug in the system call "fork"
2011-08-02 12:33:08 -07:00
Stefan Lankes
d91b0d49c2 minor bug fix
=> search the MP Config Table below 1MB
2011-08-02 18:29:20 +02:00
Marian Ohligs
032bba3a95 - some chmod changes 2011-08-02 15:58:20 +02:00
Simon Pickartz
3275d8cc17 still testing remote interrupt 2011-08-01 14:24:46 -07:00
Marian Ohligs
429c2a99d7 Merge branch 'master' into ohligs 2011-08-01 22:35:04 +02:00
Stefan Lankes
d5bfc4f28c avoid races on SMP systems
=> signalizes with a new flag, that a task switch is finished
2011-08-01 22:01:39 +02:00
Marian Ohligs
b25bd2d785 Merge branch 'master' into ohligs 2011-07-31 20:09:00 +02:00
Stefan Lankes
a26f88c940 cosmetic changes 2011-07-31 19:17:42 +02:00
Stefan Lankes
27ee238684 search MP table on all systems 2011-07-31 19:15:06 +02:00
Marian Ohligs
f9be7c9641 Merge branch 'master' into ohligs 2011-07-30 23:00:57 +02:00
Stefan Lankes
0410594ae8 fix bug in handling the timer interrupt
=> sending EOI before task switching
2011-07-30 22:47:27 +02:00
Stefan Lankes
5290cd0002 using of the correct data types
=> avoids some conflicts on other architectures
2011-07-30 22:46:08 +02:00
Marian Ohligs
94a98c5950 Merge branch 'master' into ohligs
Conflicts:
	kernel/tasks.c
2011-07-30 19:21:25 +02:00
Stefan Lankes
fba32ec692 using of the correct data types
=> avoids some conflicts on other architectures
2011-07-30 17:34:30 +02:00
Stefan Lankes
30f84a4007 fix bug in irq handling 2011-07-30 17:28:09 +02:00
Marian Ohligs
4b258871be Merge branch 'master' into ohligs 2011-07-27 10:36:51 +02:00
Marian Ohligs
55e0e971be merge master 2011-07-27 10:28:01 +02:00
Simon Pickartz
f344f65769 mailbox-system thread-safe now 2011-07-23 12:27:08 -07:00
Stefan Lankes
ff2b9da103 do not longer search a MP table, if MAX_CORES is set to 1 2011-07-22 21:17:15 +02:00
Marian Ohligs
a14ba26991 Merge branch 'master' into ohligs
Conflicts:
	kernel/tasks.c
	kernel/tests.c
2011-07-21 15:05:32 +02:00
Stefan Lankes
ab37b024b0 simply the scheduler => move code from entry.asm to timer.c 2011-07-21 09:59:29 +02:00
Stefan Lankes
e57a447fda minor changes in using the per_core macro, add additional output messages by an exception & cosmetic changes 2011-07-20 09:47:46 +02:00
Stefan Lankes
a422926dda cosmetic changes 2011-07-19 09:23:55 +02:00
Stefan Lankes
d05ffcacac we use the same handler for exceptions and interrupts => interrupts has to push a virtual error code on the stack 2011-07-19 09:10:12 +02:00
Stefan Lankes
b1c5bf67c2 use a more robust method to find the MP table 2011-07-19 07:36:24 +02:00
Stefan Lankes
d203a070f4 add IPI support to flush the TLB on the other cores 2011-07-19 07:16:49 +02:00
Stefan Lankes
85768e6f58 fix bug in APIC code
=> before we enable the interrupts,  we map the APIC registers
2011-07-18 15:51:26 +02:00
Simon Pickartz
6e14d56de8 mailbox does not support sendings to own mailbox 2011-07-18 01:14:18 -07:00
Stefan Lankes
da8b078184 align timer_ticks to a cache line 2011-07-18 09:32:52 +02:00
Stefan Lankes
e595fae384 add SMP support
- this is experimental version
- by setting MAX_CORES to 1, you are to disable the SMP support
2011-07-18 09:14:28 +02:00
Stefan Lankes
ba1cbc97c8 on a SMP system, only the boot processor increases the timer value 2011-07-18 09:10:23 +02:00
Stefan Lankes
35ec905b7e move processor initialization code into the function cpu_init 2011-07-18 09:01:35 +02:00
Stefan Lankes
18ce8eff11 some code cleanups 2011-07-15 09:22:31 +02:00
Stefan Lankes
a61607d2e7 add additional error messages 2011-07-12 10:26:50 -07:00
Stefan Lankes
ff1bc7c470 remove typo 2011-07-11 23:42:25 -07:00
Marian Ohligs
7b63bf1d27 !!!!! -> increasing the offset has to be done inside the fs/chardriver.
- rewrite the initrd_read/write, char_driver r/w. Now all functions use fildes_t instead of vfs_node_t structs.
- eleminate some compiler warnings
- some changes in open, to reduce compiler warnings. This function isn't working yet!
2011-07-05 14:50:25 +02:00
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