Commit graph

290 commits

Author SHA1 Message Date
Jorrit Herder
c9ab8cce43 Changed minor number of /dev/zero from 6 to 5.
(Make sure to update your system accordingly or /dev/zero won't work.)
Cleaned up comments in MEMORY driver.
2005-08-05 09:43:22 +00:00
Jorrit Herder
74711a3b14 Check if kernel calls is allowed (from process' call mask) added. Not yet
enforced. If a call is denied, this will be kprinted. Please report any such
errors, so that I can adjust the mask before returning errors instead of
warnings.

Wrote CMOS driver. All CMOS code from FS has been removed. Currently the
driver only supports get time calls. Set time is left out as an exercise
for the book readers ... startup scripts were updated because the CMOS driver
is needed early on. (IS got same treatment.) Don't forget to run MAKEDEV cmos
in /dev/, otherwise the driver cannot be loaded.
2005-08-04 19:23:03 +00:00
Ben Gras
20b4f17334 Added RO_BIT needed for new at_wini / fs flag 2005-08-04 09:33:38 +00:00
Jorrit Herder
e561081545 Miscellaneous clean ups and fixes to the kernel.
Support for FLOPPY in boot image. (Set controller=fd at boot monitor.)
Moved major device numbers to <minix/dmap.h> (maybe rename to dev.h?)
2005-08-04 09:26:36 +00:00
Jorrit Herder
89cf745fe2 Single boot driver loaded, while multiple can be included in the boot image.
The user needs to set label=... to choose the driver of his or her choice.
This driver will be mapped onto the controller that is set in controller=...

Minor cleanup of kernel source code (boot image table now is static).
2005-08-03 16:06:35 +00:00
Philip Homburg
c12b74dad5 Random is now a separate driver. 2005-08-03 15:22:41 +00:00
Jorrit Herder
1ae4d41d0d Without /dev/boot ... 2005-08-03 14:17:28 +00:00
Jorrit Herder
375f6f8754 Miscellaneous cleanups. 2005-08-03 11:53:36 +00:00
Philip Homburg
343bd97aeb Removed old socket library. 2005-08-03 11:28:43 +00:00
Jorrit Herder
b69ca94efb Fixed 'bug' in log driver that caused kernel messages not to be displayed.
This was caused by a change in the shared driver code. Not log's fault.

Renamed #definitions of driver process numbers, e.g., TTY now is TTY_PROC_NR.
All known (special) processes now have consistent naming scheme. Kernel tasks
don't follow this scheme.
2005-08-03 08:14:08 +00:00
Jorrit Herder
120e514506 Changed various header file to support dynamically staring drivers.
Note: full recompile necessary.
2005-08-02 15:31:12 +00:00
Philip Homburg
a93faca75f rs232 support 2005-07-29 15:22:58 +00:00
Jorrit Herder
2471939f7d System library changes to interface. 2005-07-29 15:02:27 +00:00
Philip Homburg
49c25df569 bios_wini driver 2005-07-29 10:21:04 +00:00
Ben Gras
62c08df482 Removed debugging statements from log.c; changed PRINTF_PROC in config.h
back to LOG_PROC_NR
2005-07-27 18:49:25 +00:00
Jorrit Herder
fe0dcb5c00 AT driver is not modified (debugging only);
TTY: select and revive with new notify and FS call back;
kernel: removed old notify code; removed ugly prepare_shutdown timer
kputc: don't send to FS if PRINTF_PROC fails
2005-07-27 14:32:16 +00:00
Ben Gras
e58db8b7f5 Values for alert revive/select callbacks 2005-07-27 13:09:38 +00:00
Philip Homburg
df1dbb4b7e Prototypes for some string functions that are not part of the C standard. 2005-07-27 11:44:26 +00:00
Philip Homburg
501634d5ab Added EALREADY and EMSGSIZE. 2005-07-27 11:43:28 +00:00
Philip Homburg
920c462e8c Added {h,n}to{l,s} prototypes. Added IPPROTO_TCP. SA_FAMILY_T -> _SA_FAMILY_T
Added SOCK_RAW, SOCK_RDM, SOCK_SEQPACKET, SO_DEBUG, SO_ERROR.
2005-07-27 11:42:54 +00:00
Philip Homburg
055168bd31 Added ioctls for listen/accept. Added cookies for accept. 2005-07-27 11:40:34 +00:00
Jorrit Herder
30d95cad82 Removed debug output. 2005-07-26 14:54:49 +00:00
Jorrit Herder
b62817d788 *** empty log message *** 2005-07-26 12:50:41 +00:00
Jorrit Herder
06c8f33853 Defined base numbers for DEV_ request and response types.
Defined response codes: DEV_REPLY, DEV_CLONED, DEV_REVIVE, DEV_IO_READY
2005-07-25 12:03:00 +00:00
Ben Gras
b5a5d3ec1c new svrctl SETPARAM to set or override environment variables obtained
from the boot monitor
2005-07-22 18:37:33 +00:00
Jorrit Herder
8d3e390bda Added new BASE_MEM_TOP to restrict sys_vircopy() calls from BIOS.
Updated comments at PRINTF_PROC --- it works again.
2005-07-21 18:32:49 +00:00
Jorrit Herder
43ac66556e *** empty log message *** 2005-07-20 15:34:13 +00:00
Jorrit Herder
ee509198a2 Removed 'tracing' flag from sys_exec. Logic is now local to PM.
Changed variable names in timers libary. Wrote new comments for
timers.h header file with explanation.
2005-07-20 15:33:54 +00:00
Ben Gras
d740cce24d Header file for new -lutil (naming from freebsd) 2005-07-19 16:01:20 +00:00
Jorrit Herder
5594b767c0 Renamed src/lib/utils to src/lib/sysutil --- because of new src/lib/util 2005-07-19 13:21:51 +00:00
Jorrit Herder
0129d98ae1 Added new signal types for kernel events:
- SIGKMESS: new kernel message (sent to TTY, IS, or LOG)
- SIGKSTOP: MINIX is shut down (sent to TTY-> switch to primary console)
- SIGKSIG: kernel signals pending (sent to PM)

Renamed SYS_SETPRIORITY to SYS_NICE.
2005-07-19 12:24:51 +00:00
Ben Gras
dfc51728b7 Made dirent filename len a macro; corrected comment bug in bios.h reported
by Andrew Schilt <aschilt@cox.net>.
2005-07-18 09:11:48 +00:00
Ben Gras
c69ed2c4b1 Verbose tar option was for debugging, shouldn't have been commited. Undone. 2005-07-15 11:49:34 +00:00
Jorrit Herder
272a8496ac Updated system call library.
Updated various header files for consistency.
Remove some unused stuff ... better check to be done.
2005-07-14 15:14:44 +00:00
Ben Gras
d4b173ee50 Misc fixes and additions 2005-07-12 13:10:06 +00:00
Philip Homburg
11cbb6faae Many changes to simplify porting applications. 2005-07-11 13:00:43 +00:00
Ben Gras
dd31785aa6 Added some data for the new log device. 2005-07-08 17:24:49 +00:00
Ben Gras
1adcfcdf1c Changed FD_* select() fd set manipulation functions to macros. Also
made FD_SETSIZE pre-#include-definable, with OPEN_MAX as default if unset.
2005-07-06 07:22:21 +00:00
Ben Gras
f0817fbd4c complete, tick-resolution gettimeofday() implementation 2005-07-06 07:08:36 +00:00
Ben Gras
83bac1e6a5 Callnumbers and prototypes for get/setpriority() and fsync(). 2005-07-01 17:58:57 +00:00
Ben Gras
83f0f501f8 Added <sys/resource.h> for [gs]etpriority() call. 2005-07-01 09:59:49 +00:00
Ben Gras
af27dc0cf7 Added fchdir() system call, with corresponding manpage, Changelog and
system include modifications.
2005-06-29 19:28:26 +00:00
Philip Homburg
62f7f9e6d2 Added mkstemp function. Should use a secure random number generator. 2005-06-29 15:29:08 +00:00
Ben Gras
6be8c4d8a3 Import of dpeth 3c501/3c509b/.. ethernet driver by
Giovanni Falzoni <fgalzoni@inwind.it>.
2005-06-29 10:16:46 +00:00
Ben Gras
81081a4063 _POSIX_SOURCE doesn't make sense in <sys/select.h> 2005-06-28 16:02:58 +00:00
Philip Homburg
0f26898f82 New inet with partial select implementation 2005-06-28 15:19:58 +00:00
Philip Homburg
013f484525 select.h should include <sys.time.h>. Added struct svrqueryparam to svrctl.h. 2005-06-28 15:01:55 +00:00
Ben Gras
b05fa195d6 Prototype and definitions for getopt() 2005-06-27 09:30:49 +00:00
Jorrit Herder
b25146d3de Removed SM server. 2005-06-27 08:11:46 +00:00
Jorrit Herder
59f70ec536 Removed ununsed types cpvec_t and cpvvec_t.
Removed SYS_EXIT kernel call.
2005-06-24 16:17:29 +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
538e8ba2f1 Added header file that decodes the intel x86 flags register.
Added field in kinfo that can count re-lock()ing, controlled by
ENABLE_K_LOCKCHECK in config.h.
2005-06-20 14:51:38 +00:00
Jorrit Herder
d78cf7fbaf New bit map manipulation header.
General purpose.
2005-06-20 14:29:09 +00:00
Jorrit Herder
ec24a0798c Updated function key mapping because of possible changes to NOTIFY.
The TTY driver now only notifies the IS server about function key event,
but does not tell which keys are pressed. The IS servers queries the TTY
driver to find out about this.
2005-06-20 14:23:31 +00:00
Ben Gras
c40770ce68 Various select() support flags, prototypes, definitions.
Major numbers for inet, tty, ctty.

Defined _MINIX_VERSION to check for major minix version in applications.

Prototype for (fake) readlink().
2005-06-17 13:34:47 +00:00
Jorrit Herder
36c3091342 *** empty log message *** 2005-06-17 09:15:39 +00:00
Philip Homburg
dc23e18cef Improved compatibility with other Unix systems. 2005-06-10 15:12:03 +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
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
dfe2b4513f Moved timing structs around to be more standard 2005-06-01 09:34:37 +00:00
Ben Gras
e0ffcdadd1 Added support for lock()/unlock() timing registration; also phys_zero system
call
2005-06-01 09:34:18 +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
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
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
0899f82ab2 Fixed some minor issues with the NOTIFY call. 2005-05-24 14:35:58 +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
e5a694b126 Added note to indicate how touchy MAX_BLOCK_SIZE is at the moment. 2005-05-20 12:30:37 +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
Ben Gras
454c3449b3 Oops, set hash table size to non-power-of-two 2005-05-13 14:57:09 +00:00
Ben Gras
d422461289 Started rs232 porting to userland; increased version number for new cd. 2005-05-13 12:29:10 +00:00
Jorrit Herder
1ecc6bf3b3 Removed 'system process' magic from PM and FS. 2005-05-13 08:57:08 +00:00
Ben Gras
873e44b41f Some #defines for removing registered irq handler 2005-05-12 16:07:15 +00:00
Jorrit Herder
fbe1641bd3 User-space networking!
- RTL8139 driver moved to user-space;
- PCI code moved to user-space;
Fixed IRQ hook dump at IS server.
2005-05-11 09:02:00 +00:00
Jorrit Herder
ab39ce451b Fixed some system call checks;
Added SYS_PHYSVCOPY system call;
Fixed IRQ hooks dump in IS server;
2005-05-10 11:06:24 +00:00
Ben Gras
96e9faf535 userlandified and enabled PTY's 2005-05-09 14:35:26 +00:00
Ben Gras
6b500b03a6 Raised version to 3.0.2 in config.h
Told the Makefile not to panic if creating /usr/include due to it existing
(due to bin not being allowed to create it) fails, this smoothens installs
done by bin (instead of root).
2005-05-03 15:39:41 +00:00
Jorrit Herder
ac0995259d *** empty log message *** 2005-05-02 14:30:04 +00:00
Jorrit Herder
89ac678b9b *** empty log message *** 2005-04-29 15:36:43 +00:00
Ben Gras
6595782e6d Created /dev/random minor device number 2005-04-22 13:31:32 +00:00
Ben Gras
9865aeaa79 Initial revision 2005-04-21 14:53:53 +00:00