Dynamic configuration in system.conf for boot system services.

This commit is contained in:
Cristiano Giuffrida
2010-07-13 21:11:44 +00:00
parent f6e558f5d4
commit f8a8ea0a79
20 changed files with 938 additions and 629 deletions

24
etc/rc
View File

@@ -173,16 +173,20 @@ Mount $usr /usr failed -- Single user."
fi
# Edit settings for boot system services
edit rs
edit vm
edit pm
edit sched
edit vfs
edit ds
edit tty
edit memory
edit -p log
edit -c pfs
if [ "`sysenv skip_boot_config`" != 1 ]
then
edit rs
edit vm
edit pm
edit sched
edit vfs
edit ds
edit tty
edit memory
edit -p log
edit -c pfs
edit init
fi
if [ ! -z "$home" ]
then mount $bin_img $home /home || echo "WARNING: couldn't mount $home on /home"

View File

@@ -1,8 +1,236 @@
#
# Boot system services in the boot image
#
service rs
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system ALL; # ALL kernel calls allowed
vm # Extra VM calls allowed:
RS_SET_PRIV # 37
RS_UPDATE # 41
RS_MEMCTL # 42
;
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr SELF; # Signal manager is SELF
scheduler KERNEL; # Scheduler is KERNEL
priority 4; # priority queue 4
quantum 500; # default server quantum
};
service ds
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system ALL; # ALL kernel calls allowed
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler KERNEL; # Scheduler is KERNEL
priority 4; # priority queue 4
quantum 500; # default server quantum
};
service vm
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system ALL; # ALL kernel calls allowed
vm NONE; # No VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler KERNEL; # Scheduler is KERNEL
priority 2; # priority queue 2
quantum 500; # default server quantum
};
service pm
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system ALL; # ALL kernel calls allowed
vm # Extra VM calls allowed:
EXIT # 00
FORK # 01
BRK # 02
EXEC_NEWMEM # 03
PUSH_SIG # 04
WILLEXIT # 05
ADDDMA # 12
DELDMA # 13
GETDMA # 14
NOTIFY_SIG # 39
;
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler KERNEL; # Scheduler is KERNEL
priority 4; # priority queue 4
quantum 500; # default server quantum
};
service sched
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system ALL; # ALL kernel calls allowed
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler KERNEL; # Scheduler is KERNEL
priority 4; # priority queue 4
quantum 500; # default server quantum
};
service vfs
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system # Extra kernel calls allowed:
KILL # 06
UMAP # 14
VIRCOPY # 15
;
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler KERNEL; # Scheduler is KERNEL
priority 5; # priority queue 5
quantum 500; # default server quantum
};
service mfs
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system BASIC; # Only basic kernel calls allowed
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler sched; # Scheduler is sched
priority 5; # priority queue 5
quantum 500; # default server quantum
};
service pfs
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system BASIC; # Only basic kernel calls allowed
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler sched; # Scheduler is sched
priority 5; # priority queue 5
quantum 500; # default server quantum
};
service tty
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system # Extra kernel calls allowed:
KILL # 06
SEGCTL # 12
UMAP # 14
VIRCOPY # 15
PHYSCOPY # 16
IRQCTL # 19
INT86 # 20
DEVIO # 21
SDEVIO # 22
VDEVIO # 23
ABORT # 27
IOPENABLE # 28
READBIOS # 35
;
vm BASIC; # Only basic VM calls allowed
io ALL; # ALL I/O ranges allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler sched; # Scheduler is sched
priority 1; # priority queue 1
quantum 50; # default driver quantum
};
service memory
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system # Extra kernel calls allowed:
SEGCTL # 12
UMAP # 14
VIRCOPY # 15
PHYSCOPY # 16
IRQCTL # 19
INT86 # 20
DEVIO # 21
SDEVIO # 22
VDEVIO # 23
IOPENABLE # 28
;
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler KERNEL; # Scheduler is KERNEL
priority 3; # priority queue 3
quantum 50; # default driver quantum
};
service log
{
uid 0;
ipc ALL; # ALL ipc targets allowed
system # Extra kernel calls allowed:
SEGCTL # 12
UMAP # 14
VIRCOPY # 15
IRQCTL # 19
INT86 # 20
DEVIO # 21
SDEVIO # 22
VDEVIO # 23
;
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQ allowed
sigmgr rs; # Signal manager is RS
scheduler sched; # Scheduler is sched
priority 2; # priority queue 2
quantum 50; # default driver quantum
};
service init
{
uid 0;
ipc # ipc targets allowed:
pm vfs rs vm
;
system NONE; # No kernel calls allowed
vm BASIC; # Only basic VM calls allowed
io NONE; # No I/O range allowed
irq NONE; # No IRQs allowed
sigmgr pm; # Signal manager is PM
};
#
# Dynamically started system services
#
service floppy
{
irq 6;
io 3f0:8
0:10 # XXX DMA controller
0:10 # DMA controller
81 # Also DMA
;
system
@@ -70,7 +298,7 @@ service rtl8139
pci device 1743/8139;
pci device 4033/1360;
ipc
SYSTEM PM RS LOG TTY DS VM
SYSTEM pm rs log tty ds vm
pci inet amddev
;
};
@@ -87,7 +315,7 @@ service fxp
pci device 8086/1229;
pci device 8086/2449;
ipc
SYSTEM PM RS LOG TTY DS VM
SYSTEM pm rs log tty ds vm
pci inet amddev
;
};
@@ -167,11 +395,6 @@ service bios_wini
;
};
service mfs
{
uid 0;
};
service isofs
{
system
@@ -183,7 +406,7 @@ service isofs
service hgfs
{
ipc
SYSTEM PM VFS RS VM
SYSTEM pm vfs rs vm
;
};
@@ -256,21 +479,14 @@ service ipc
;
uid 0;
ipc
SYSTEM
PM
RS
LOG
TTY
DS
VM
USER
SYSTEM USER pm rs log tty ds vm
;
vm
REMAP
UNREMAP
SHM_UNMAP
GETPHYS
GETREFCNT
QUERYEXIT
GETREF
QUERY_EXIT
;
};
@@ -287,7 +503,7 @@ service osscore
4/1 # Multimedia / Audio device
;
ipc
SYSTEM PM RS LOG TTY DS VFS VM
SYSTEM pm rs log tty ds vfs vm
pci inet amddev
;
uid 0;
@@ -310,7 +526,7 @@ service rtl8169
pci device 16ec/0116;
pci device 1737/1032;
ipc
SYSTEM PM RS LOG TTY DS VM
SYSTEM pm rs log tty ds vm
pci inet amddev
;
};
@@ -318,7 +534,7 @@ service rtl8169
service filter
{
ipc
SYSTEM PM VFS RS DS VM
SYSTEM pm vfs rs ds vm
at_wini
bios_wini
;
@@ -339,7 +555,7 @@ service e1000
pci device 8086/107c;
pci device 8086/10cd;
ipc
SYSTEM PM RS LOG TTY DS VM
SYSTEM pm rs log tty ds vm
pci inet ;
};
@@ -351,7 +567,7 @@ service atl2
;
pci device 1969/2048;
ipc
SYSTEM PM RS TTY DS VM
SYSTEM pm rs tty ds vm
pci inet
;
};
@@ -365,7 +581,7 @@ service dec21140A
;
pci device 1011/0009;
ipc
SYSTEM PM RS LOG TTY DS VM
SYSTEM pm rs log tty ds vm
pci inet
;
};
@@ -377,7 +593,7 @@ service hello
DEVIO # 21
;
ipc
SYSTEM PM RS LOG TTY DS VM VFS
SYSTEM pm rs log tty ds vm vfs
pci inet amddev
;
uid 0;