Commit graph

27 commits

Author SHA1 Message Date
Ben Gras 7697700802 Made src belong to bin in release cp.
Made /usr/include belong to bin in mtree.
Fixed compiler warning in fs/pipe.c.
Added mdb (minix debugger) manual page.
Added ethernet config function in setup script.
2005-06-27 11:59:36 +00:00
Jorrit Herder 042c4ac395 Changed Makefiles for mkdep script.
Updated debugging dumps at IS server, and function key control.

NOTE: pm modified with DEBUG() output, to be removed later.
2005-06-24 16:21:21 +00:00
Philip Homburg 0979014807 Renamed some types Uid_t, Gid_t, Mode_t, etc. for perl5.
More space for synctree.
2005-06-23 11:07:31 +00:00
Ben Gras d844d2a547 Fixed nasty bug that would cause FS to loop forever in rw_scattered (while
syncing, for instance) if blocks are unwritable. This could happen if:

  . write goes beyond device boundary to a block device
  . write is done for a complete block or more; thus the
    block is not retrieved first (at which point it would be noticed
    it doesn't exist), but the buffer is simply allocated
  . at write time, the device i/o doesn't succeed, but rw_scattered
    doesn't understand this and loops forever trying to get the block
    written.

Currently, if no blocks can be written, the loop aborts, leaving all
buffers intact but potentially dirty. When invalidate() is called on the
device, the buffers will disappear (even if dirty). Same story for if
the buffer is removed due to rmed from lru chain. There's not much we
can do about this, however - we can't keep these blocks around, forever
occupying a buffer in the buffer cache.

The second part of the solution is not to let unwritable buffers be
created in the first place. How to do this, however, without doing a
wasteful read first?

It looks like this code was in 2.0.4 too.
2005-06-19 22:33:49 +00:00
Ben Gras 5954c7e303 Part of fs timers library, forgot to add this in previous commit. 2005-06-17 13:49:56 +00:00
Ben Gras 9664ba0c4f Started select() implementation.
Added interface to select() for pipes (also named pipes), and select()
stubs for regular files.

Added timer library in FS that select() is the first customer of.


This is unfinished, but committed anyway to get a new release out to
Al and testers.
2005-06-17 13:41:12 +00:00
Jorrit Herder c2cd510adf Removed debug dumps from the PM and FS servers. The dumps are now done by the
IS servers, which obtains a copy of the data through the getsysinfo() system
call. CTRL-F1 now is a special TTY key to shows function key mappings.
2005-06-07 14:43:35 +00:00
Jorrit Herder 2f74381dcc Fixed 'ps' utility: now get process table addresses with getsysinfo() calls.
To be done: get copies of process tables instead of using /dev/(k)mem.
2005-06-06 13:51:50 +00:00
Ben Gras e44e9ad261 small compile fixes; initial select() stubs; release.sh script doesn't
need /tmp any more since 16MB root device; increase to 3.0.5 to make new
CD with working FXP driver. (not tagged 3.0.5 yet as at driver bios-copy
workaround hasn't been done.)
2005-06-06 11:40:32 +00:00
Jorrit Herder c281867f46 Fixed bug relating to FS and MEMORY during startup;
Relocated some syslib functions to utils library;
Changed location of 'Multiuser startup ..." echo in /etc/rc
2005-06-06 09:30:44 +00:00
Jorrit Herder f2a85e58d9 Various updates.
* Removed some variants of the SYS_GETINFO calls from the kernel;
  replaced them with new PM and utils libary functionality. Fixed
  bugs in utils library that used old get_kenv() variant.
* Implemented a buffer in the kernel to gather random data.
  Memory driver periodically checks this for /dev/random.
  A better random algorithm can now be implemented in the driver.
  Removed SYS_RANDOM; the SYS_GETINFO call is used instead.
* Remove SYS_KMALLOC from the kernel. Memory allocation can now
  be done at the process manager with new 'other' library functions.
2005-06-03 13:55:06 +00:00
Ben Gras d0b5cf84cb Undid usage of vector-copy function. It's a good idea but there's a bug
there somewhere. I'll debug first, then recommit.
2005-06-02 16:49:33 +00:00
Jorrit Herder e782e76944 Created new findproc system call to the PM (to replace similar kernel
functionality). Currently working on memory allocation (not yet finished).
2005-06-02 12:43:21 +00:00
Jorrit Herder 6d23f072f3 Cleaned up src/lib/utils library. Renamed server_ functions to more logical
names. All system processes can now either use panic() or report() from
libutils, or redefine their own function. Assertions are done via the standard
<assert.h> functionality.
2005-06-01 14:31:00 +00:00
Ben Gras 66dab193f3 function key notifications became notifies fix 2005-06-01 09:40:02 +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
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 6ea72ca1ee Make use of vectored virtual copy system call 2005-05-24 12:28:09 +00:00
Ben Gras 80e38daead freed up use of name 'offset' 2005-05-20 13:27:38 +00:00
Ben Gras 33bc71c3f5 Don't cache /dev/ram blocks 2005-05-13 13:42:07 +00:00
Ben Gras 78fd966125 DONT_SWAP not used 2005-05-13 11:44:16 +00:00
Jorrit Herder 1ecc6bf3b3 Removed 'system process' magic from PM and FS. 2005-05-13 08:57:08 +00:00
Ben Gras 81c1b9d76d . FS: removed half-baked stack trace code
. inet: removed silly error message from inet that ends up in the console
  regularly
. Makefile: added some files to the incomplete clean target
2005-05-03 09:02:47 +00:00
Jorrit Herder 89ac678b9b *** empty log message *** 2005-04-29 15:36:43 +00:00
Ben Gras b4209a856d bugfix.. r isn't an error in 'return r' 2005-04-22 15:20:05 +00:00
Ben Gras 6019a0a5d0 Fixed ram disk loading for whenever the block sizes match. 2005-04-22 11:09:06 +00:00
Ben Gras 9865aeaa79 Initial revision 2005-04-21 14:53:53 +00:00