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.
This commit is contained in:
Jorrit Herder
2005-05-24 10:06:17 +00:00
parent 80e38daead
commit ccd17ecfed
22 changed files with 304 additions and 377 deletions
+1 -1
View File
@@ -12,7 +12,7 @@
#define INT2_CTLMASK 0xA1 /* setting bits in this port disables ints */
/* Magic numbers for interrupt controller. */
#define ENABLE 0x20 /* code used to re-enable after an interrupt */
#define END_OF_INT 0x20 /* code used to re-enable after an interrupt */
/* Interrupt vectors defined/reserved by processor. */
+4 -3
View File
@@ -82,9 +82,10 @@
#define NR_NOTIFY_TYPES 5 /* nr of bits in mask */
/* Shorthands for message parameters passed with notifications. */
#define NOTIFY_TYPE m2_i1
#define NOTIFY_FLAGS m2_i2
#define NOTIFY_ARG m2_i3
#define NOTIFY_SOURCE m_source
#define NOTIFY_TYPE m_type
#define NOTIFY_FLAGS m2_i1
#define NOTIFY_ARG m2_l1
/*===========================================================================*
+1 -1
View File
@@ -3,7 +3,7 @@
/* Minix release and version numbers. */
#define OS_RELEASE "3"
#define OS_VERSION "0.3"
#define OS_VERSION "0.4"
/* This file sets configuration parameters for the MINIX kernel, FS, and PM.
* It is divided up into two main sections. The first section contains
+1
View File
@@ -106,6 +106,7 @@ struct kinfo {
long notify_blocked;
long notify_switching;
long notify_reenter;
long notify_taskcall;
long notify_ok;
long notify_unhold;
long notify_int;