Ben Gras
e0ffcdadd1
Added support for lock()/unlock() timing registration; also phys_zero system
...
call
2005-06-01 09:34:18 +00:00
Ben Gras
39a2fc72dd
different way of dealing with fd's so chmem <arg> <long list of files>
...
doesn't fail due to file descriptor leaks
2005-06-01 09:31:14 +00:00
Jorrit Herder
a3d2f35993
Fixed minor bug in PM's child time administration.
2005-06-01 08:55:22 +00:00
Ben Gras
5a43b84e2d
Fix for 'the kermit problem' (keyrepeats happening before the keyrepeat
...
timeout). A fix is to treat the alarm and interrupt cases differently and
only call the interrupt handler when an actual interrupt has been seen. No
apparent adverse effects.
2005-05-31 15:22:06 +00:00
Jorrit Herder
f0af8d85e7
*** empty log message ***
2005-05-31 14:44:49 +00:00
Jorrit Herder
0165662cd9
Replaced flagalrm() timers with another technique to check for timeouts.
...
This allowed removing the p_flagarlm timer from the kernel's process table.
Furthermore, I merged p_syncalrm and p_signalrm into p_alarm_timer to save
even more space. Note that processes can no longer have both a signal and
synchronous alarm timer outstanding as of now.
2005-05-31 14:43:04 +00:00
Ben Gras
e673eeee20
compile fixes for kermit and postmort
2005-05-31 12:32:35 +00:00
Ben Gras
135328ac59
Fixed some compiler warnings.
2005-05-31 11:14:37 +00:00
Ben Gras
9e5e6e7b51
Reverse trailer/delay order (delay first)
2005-05-31 11:11:47 +00:00
Jorrit Herder
ea46d51176
Added time.c
2005-05-31 10:57:19 +00:00
Jorrit Herder
322ec9ef8b
Moved stime, time, times POSIX calls from FS to PM. Removed child time
...
accounting from kernel (now in PM). Large amount of files in this commit
is due to system time problems during development.
2005-05-31 09:50:51 +00:00
Ben Gras
cd72f80639
Disabled clearing screen in tty driver, started console printing after an
...
initial 1-line scroll at last line. If clearing screen in trailer of boot
monitor is disabled, all previous boot monitor and console messages are
preserved on rebooting.
All that's needed now is a scrollback buffer to see all old messages..
(Even from the boot monitor, bios, previous boots...)
2005-05-30 15:09:51 +00:00
Ben Gras
5927788cdd
Added 'bootdelay' feature in boot monitor, it pauses a given number of ms
...
so the list of programs in the image and their sizes can be seen before the
kernel starts filling the screen.
Added some formatting fixes in installboot and boot monitor itself,
some of the segments were larger than the formatting allowed.
2005-05-30 15:02:52 +00:00
Jorrit Herder
b421423c77
SENDREC now always has flag FRESH_ANSWER to prevent pending notifications
...
to be used as answer to a SENDREC call.
2005-05-30 11:11:40 +00:00
Jorrit Herder
826fee4c6d
Fixed clear_proc(): properly release resources (IRQ hooks, notify buffers);
...
Cleaned up comments in proc.c (old code still present for comparison);
2005-05-30 11:05:42 +00:00
Ben Gras
fcd113da7b
Imported kermit v2.11
2005-05-30 10:55:32 +00:00
Jorrit Herder
9646824fce
Fixed PM send() failed warning: don't reply to killed process that did reboot.
...
: `VS: Enter Log. Lines beginning with `CVS:' are removed automatically
2005-05-30 09:29:48 +00:00
Jorrit Herder
ed54b1cd6a
Improved shared device driver code: use SELF instead of 'getprocnr'.
2005-05-30 08:51:23 +00:00
Jorrit Herder
852008d669
Kinfo counts lock_notify() and lock_send() calls.
2005-05-27 14:54:40 +00:00
Jorrit Herder
8d9c0886cd
Created ECHO system call for testing purposes.
...
Furthermore, a quick way to get one's own process number.
2005-05-27 13:57:00 +00:00
Jorrit Herder
07d582872f
Fixed a bug in PM: sending of reply messages didn't check if destination
...
process is still alive. This caused a panic in some situations, e.g., when
all processes are killed on a shutdown.
2005-05-27 13:10:58 +00:00
Jorrit Herder
c2be104821
Improved NOTIFY system: fixed a minor error, ignore pending notifications
...
on SENDREC system calls. To be done: resource (buffer pool) management;
make it structurally impossible to run out of buffers.
2005-05-27 12:44:14 +00:00
Jorrit Herder
77c3213948
Optimized scheduling code. Old code is still available withing DEAD_CODE
...
and NEW_SCHED_Q definitions. Some minor problems are being traced at the
moment. This commit is meant to backup my files.
--- Jorrit
2005-05-26 13:17:57 +00:00
Ben Gras
dcffa17db2
this test breaks on the new pre-i/o i/o buffer check. it wants to read
...
more than its buffer allowed, so it is reasonable that it breaks. reducing
read request size 'fixes' it.
2005-05-24 14:57:45 +00:00
Jorrit Herder
0899f82ab2
Fixed some minor issues with the NOTIFY call.
2005-05-24 14:35:58 +00:00
Ben Gras
70cdffcc18
fixed compile breakage
2005-05-24 13:18:29 +00:00
Ben Gras
804cb810d0
added a debugging functionality in system/debugging.c (to check sanity of
...
run queues) and associated prototype in system.h
2005-05-24 12:33:03 +00:00
Ben Gras
168b7f2669
. fixed a recently introduced scheduler (run-queue) bug in proc.c
...
. a little (optional) debugging code added to proc.c and associated
data in proc.h
2005-05-24 12:32:34 +00:00
Ben Gras
0f55ebe90a
Initialisation required for optional debugging code.
2005-05-24 12:30:51 +00:00
Ben Gras
6a3519f3a8
Added 2 checks to mapping function - one for overflow (virtual address +
...
size wraparound), one to see if the size fits in the designated segment.
It seems this check wasn't done. This came to light when trying to pre-check
the users buffer for read() and write() in using the vectored virtual
copy system call in servers/fs/read.c.
2005-05-24 12:30:29 +00:00
Ben Gras
6ea72ca1ee
Make use of vectored virtual copy system call
2005-05-24 12:28:09 +00:00
Ben Gras
4e155167c8
sync after install in case of trouble while shutdowning
2005-05-24 12:03:42 +00:00
Jorrit Herder
ccd17ecfed
New NOTIFY system call! Queued at kernel. Duplicate messages (with same source
...
and type) are overwritten with newer flags/ arguments. The interface from
within the kernel is lock_notify(). User processes can make a system call with
notify(). NOTIFY fully replaces the old notification mechanism.
2005-05-24 10:06:17 +00:00
Ben Gras
80e38daead
freed up use of name 'offset'
2005-05-20 13:27:38 +00:00
Ben Gras
64ecaca24b
Changed something in default no. of inodes in mkfs (I run out of inodes
...
often with the defaults).
Made setup script not make root filesystem with 1kB filesystem blocks,
as that restriction is out of the boot monitor now.
2005-05-20 12:40:46 +00:00
Ben Gras
cafbbedbba
Fix to let FXP driver send messages.
...
Removed banner talking about the known hang-bug (it's fixed,
practically speaking).
2005-05-20 12:39:36 +00:00
Ben Gras
e5a694b126
Added note to indicate how touchy MAX_BLOCK_SIZE is at the moment.
2005-05-20 12:30:37 +00:00
Ben Gras
f8bd2691ec
Removed root filesystem blocksize restriction by reducing boot monitor
...
stack size from 16kB to 8kB. No apparent adverse affects.
2005-05-20 12:30:19 +00:00
Ben Gras
cff515edd8
made time use times() system call to get higher resolution (1/60s clock
...
ticks instead of 1s) for real time measurement.
2005-05-20 10:06:33 +00:00
Jorrit Herder
d0a5a5d007
New system call added to PM: getprocnr(int *proc_nr) (like getpid);
...
Minor update to scheduling code (unready().
2005-05-20 09:37:43 +00:00
Jorrit Herder
307c825515
New NOTIFY trap (IPC call) to send queued notification messages.
...
The call works. Permission check, restriction of outstanding notifications
to be added. Low level code to make it work from within interrupt handlers
will be added as well.
2005-05-19 14:05:51 +00:00
Philip Homburg
129b82d207
Added fxp driver for the Intel Pro/100 series ethernet cards
...
Print PC in hex for easier debugging.
2005-05-19 13:27:05 +00:00
Jorrit Herder
2ebe535030
*** empty log message ***
2005-05-19 09:38:29 +00:00
Jorrit Herder
1cb880b158
Intermediate update---please await next commit.
2005-05-19 09:36:44 +00:00
Jorrit Herder
614f49b557
Fixed some comments and reorganized some code.
...
Fixed minor bug in notify() function.
2005-05-18 10:36:23 +00:00
Ben Gras
821dfb06ed
Minor fixes. (Skip test 28 LINK_MAX links generation, it takes too long.)
2005-05-17 08:40:32 +00:00
Ben Gras
b42be3741b
pre-release cleanup nit
2005-05-13 14:57:29 +00:00
Ben Gras
454c3449b3
Oops, set hash table size to non-power-of-two
2005-05-13 14:57:09 +00:00
Ben Gras
33bc71c3f5
Don't cache /dev/ram blocks
2005-05-13 13:42:07 +00:00
Ben Gras
7f52483b9f
Release process to use and create 16MB root; FS setcache call removed
2005-05-13 12:47:35 +00:00