minix/etc/system.conf
David van Moolenbroek e4e21ee1b2 Add MIB service, sysctl(2) support
The new MIB service implements the sysctl(2) system call which, as
we adopt more NetBSD code, is an increasingly important part of the
operating system API.  The system call is implemented in the new
service rather than as part of an existing service, because it will
eventually call into many other services in order to gather data,
similar to ProcFS.  Since the sysctl(2) functionality is used even
by init(8), the MIB service is added to the boot image.

MIB stands for Management Information Base, and the MIB service
should be seen as a knowledge base of management information.

The MIB service implementation of the sysctl(2) interface is fairly
complete; it incorporates support for both static and dynamic nodes
and imitates many NetBSD-specific quirks expected by userland.  The
patch also adds trace(1) support for the new system call, and adds
a new test, test87, which tests the fundamental operation of the
MIB service rather thoroughly.

Change-Id: I4766b410b25e94e9cd4affb72244112c2910ff67
2016-01-13 20:32:37 +01:00

765 lines
11 KiB
Plaintext

#
# 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
PROCCTL # 45
RS_PREPARE # 48
;
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_SYS; # All system 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
EXEC_NEWMEM # 03
WILLEXIT # 05
NOTIFY_SIG # 39
GETRUSAGE # 47
;
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_SYS; # All system 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
MEMSET
;
vm PROCCTL
VFS_MMAP
VFS_REPLY
;
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
{
ipc ALL_SYS; # All system ipc targets allowed
system BASIC; # Only basic kernel calls allowed
vm MAPCACHEPAGE SETCACHEPAGE FORGETCACHEPAGE CLEARCACHE;
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 ntfs-3g
{
uid SELF; # Use uid of user starting service
ipc ALL_SYS; # All system 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 ext2
{
ipc ALL_SYS; # All system ipc targets allowed
system BASIC; # Only basic kernel calls allowed
vm MAPCACHEPAGE SETCACHEPAGE FORGETCACHEPAGE CLEARCACHE;
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
{
ipc ALL_SYS; # All system ipc targets allowed
system BASIC; # Only basic kernel 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_SYS; # All system ipc targets allowed
system # Extra kernel calls allowed:
KILL # 06
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 KERNEL; # Scheduler is KERNEL (prevents console stalls)
priority 1; # priority queue 1
quantum 50; # default driver quantum
};
service memory
{
uid 0;
ipc ALL_SYS; # All system ipc targets allowed
system # Extra kernel calls allowed:
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
{
ipc SYSTEM vfs rs vm;
priority 2;
};
service mib
{
system
VIRCOPY # 15
;
ipc ALL;
uid 0;
};
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 # DMA controller
81 # Also DMA
;
system
UMAP # 14
IRQCTL # 19
DEVIO # 21
VDEVIO # 23
;
};
service dp8390
{
system
IRQCTL # 19
DEVIO # 21
SDEVIO # 22
;
pci device 10ec:8029;
io
300:20
;
irq 9;
};
service dpeth
{
system
IRQCTL # 19
DEVIO # 21
SDEVIO # 22
;
uid 0;
};
service inet
{
uid 0;
};
service lwip
{
uid 0;
};
service random
{
};
service readclock.drv
{
ipc ALL;
io 70:2;
system
PRIVCTL # 4
UMAP # 14
VIRCOPY # 15
DEVIO # 21
READBIOS # 35
;
uid 0;
};
service is
{
vm
INFO
;
uid 0;
};
service acpi
{
io ALL;
system
PRIVCTL # 4
DEVIO # 21
;
uid 0;
};
service pci
{
io cf8:8 # PCI bus controller
4d0:2 # PIIX
;
system
PRIVCTL # 4
DEVIO # 21
;
uid 0;
};
service ahci
{
system
UMAP # 14
VUMAP # 18
IRQCTL # 19
;
pci class
1/6/1 # Mass storage / SATA / AHCI
;
};
service virtio_blk
{
system
UMAP
VUMAP
IRQCTL
DEVIO
;
pci device 1af4:1001;
};
service at_wini
{
io 1f0:8 # Controller 0
3f6 # Also controller 0
170:8 # Controller 1
376 # Also controller 1
;
irq
14 # Controller 0
15 # Controller 1
;
system
UMAP # 14
IRQCTL # 19
DEVIO # 21
SDEVIO # 22
VDEVIO # 23
;
pci class # Match these PCI classes:
1/1 # Mass storage / IDE
;
pci device # In addition, match these devices:
1106:3149 # VIA VT6420 RAID (1/4)
1095:3512/1095:6512 # Silicon Image SATA RAID (1/4)
1095:3114/1095:3114 # Silicon Image SATA RAID (1/80)
;
};
service procfs
{
system
VIRCOPY # 15
;
vm
INFO
SETCACHEPAGE
CLEARCACHE
;
uid 0;
};
service isofs
{
system
UMAP # 14
;
vm MAPCACHEPAGE
SETCACHEPAGE
CLEARCACHE
;
uid 0;
};
service hgfs
{
ipc
SYSTEM pm vfs rs vm
;
vm
SETCACHEPAGE
CLEARCACHE
;
};
service vbfs
{
ipc
SYSTEM pm vfs rs ds vm vbox
;
vm
SETCACHEPAGE
CLEARCACHE
;
};
service printer
{
io 378:4 # LPT1
278:4 # LPT2
;
irq
7 # PRINTER_IRQ
;
system
KILL # 6
UMAP # 14
IRQCTL # 19
DEVIO # 21
VDEVIO # 23
READBIOS # 35
;
};
service es1370
{
system
UMAP # 14
IRQCTL # 19
DEVIO # 21
;
pci device 1274:5000;
};
service es1371
{
system
UMAP # 14
IRQCTL # 19
DEVIO # 21
;
pci device 1274:1371;
};
service ti1225
{
system
IRQCTL # 19
;
pci device 104c:ac1c;
};
service amddev
{
pci device 1022:1103;
system
UMAP_REMOTE # 17
;
vm
ADDDMA # 12
DELDMA # 13
GETDMA # 14
;
uid 0;
};
service osscore
{
system
PRIVCTL # 4
UMAP # 14
IRQCTL # 19
DEVIO # 21
SDEVIO # 22
;
pci class
4/1 # Multimedia / Audio device
;
ipc
SYSTEM pm rs tty ds vfs vm
pci inet lwip amddev
;
uid 0;
};
service filter
{
ipc
SYSTEM pm vfs rs ds vm
at_wini
;
control
at_wini
;
};
service input
{
ipc SYSTEM pm vfs rs ds tty vm;
priority 1;
};
service pckbd
{
system
IRQCTL # 19
DEVIO # 21
;
io 60:8; # Keyboard, keyboard command/status
irq
1 # Keyboard
12 # Auxiliary input (mouse)
;
ipc SYSTEM pm rs ds vm input;
priority 1;
};
service hello
{
system
IRQCTL # 19
DEVIO # 21
;
ipc
SYSTEM pm rs tty ds vm vfs
pci inet lwip amddev
;
uid 0;
};
service devman
{
uid 0;
vm
SETCACHEPAGE
CLEARCACHE
;
};
service mmc
{
system
PRIVCTL # 4
IRQCTL # 19
;
# Interrupts allowed
irq
64
83
; # IRQs allowed
priority 4; # priority queue 4
};
service fb
{
system
UMAP # 14
DEVIO # 21
PRIVCTL # 4
;
ipc
SYSTEM pm rs ds vm vfs cat24c256 tda19988
;
};
service gpio
{
system
PRIVCTL # 4
IRQCTL # 19
PADCONF # 57
;
vm
SETCACHEPAGE
CLEARCACHE
;
irq
29 # GPIO module 1 (dm37xx)
30 # GPIO module 2 (dm37xx)
31 # GPIO module 3 (dm37xx)
32 # GPIO module 4 (dm37xx) / module 2a (am335x)
33 # GPIO module 5 (dm37xx) / module 2b (am335x)
34 # GPIO module 6 (dm37xx)
62 # GPIO module 3a (am335x)
63 # GPIO module 3b (am335x)
96 # GPIO module 0a (am335x)
97 # GPIO module 0b (am335x)
98 # GPIO module 1a (am335x)
99 # GPIO module 1b (am335x)
;
};
service i2c
{
system
PRIVCTL # 4
IRQCTL # 19
PADCONF # 57
;
irq
# DM37XX (BeagleBoard-xM)
56 # I2C module 1
57 # I2C module 2
61 # I2C module 3
# AM335X (BeagleBone)
70 # I2C module 1
71 # I2C module 2
30 # I2C module 3
;
ipc SYSTEM RS DS;
};
service cat24c256
{
ipc SYSTEM RS DS i2c;
};
service tda19988
{
ipc SYSTEM RS DS i2c;
};
service tps65217
{
uid 0; # needed for doing reboot()
system IRQCTL PRIVCTL;
irq 7; # NNMI pin on BeagleBone / BeagleBone Black
ipc SYSTEM RS DS PM i2c;
};
service tps65950
{
ipc SYSTEM RS DS i2c readclock.drv;
};
service tsl2550
{
ipc SYSTEM RS DS i2c;
};
service sht21
{
ipc SYSTEM RS DS i2c;
};
service bmp085
{
ipc SYSTEM RS DS i2c;
};
service vbox
{
system
UMAP # 14
VUMAP # 18
IRQCTL # 19
DEVIO # 21
;
pci device 80ee:cafe;
ipc
SYSTEM
PM
RS
VM
pci
;
uid 0;
};
service fbd
{
ipc
SYSTEM vfs rs ds vm
ahci
at_wini
;
};
service vnd
{
ipc
SYSTEM vfs rs vm
;
uid 0; # only for copyfd(2)
};
service uds
{
ipc
SYSTEM vfs rs vm
;
uid 0; # only for checkperms(2) and copyfd(2)
};
service pty
{
system
KILL # 06
;
ipc
SYSTEM vfs rs vm
;
};
service ptyfs
{
ipc
SYSTEM pm vfs rs pty ds vm
;
};
service edfictl
{
ipc ALL;
};
service emmc
{
system
PRIVCTL
IRQCTL
PADCONF
;
irq
28 # MMCSD1INT
;
};