minix/etc/system.conf
Ben Gras 33a7ac7557 vfs: mmap support
. libc: add vfs_mmap, a way for vfs to initiate mmap()s.
	  This is a good special case to have as vfs is a slightly
	  different client from regular user processes. It doesn't do it
	  for itself, and has the dev & inode info already so the callback
	  to VFS for the lookup isn't necessary. So it has different info
	  to have to give to VM.
	. libc: also add minix_mmap64() that accepts a 64-bit offset, even
	  though our off_t is still 32 bit now.
	. On exec() time, try to mmap() in the executable if available.
	  (It is not yet available in this commit.)
	. To support mmap(), add do_vm_call that allows VM to lookup
	  (to ino+dev), do i/o from and close FD's on behalf of other
	  processes.

Change-Id: I831551e45a6781c74313c450eb9c967a68505932
2013-05-31 15:42:00 +00:00

618 lines
9.6 KiB
Text

#
# 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
;
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
BRK # 02
EXEC_NEWMEM # 03
WILLEXIT # 05
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_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;
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;
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;
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
vm MAPCACHEPAGE SETCACHEPAGE;
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 sched; # Scheduler is sched
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
{
uid 0;
ipc ALL_SYS; # All system ipc targets allowed
system # Extra kernel calls allowed:
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 # 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;
uid 0;
};
service dpeth
{
system
IRQCTL # 19
DEVIO # 21
SDEVIO # 22
;
uid 0;
};
service inet
{
uid 0;
};
service lwip
{
uid 0;
};
service random
{
};
service readclock.drv
{
io 70:2;
system
UMAP # 14
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
READBIOS # 35
;
pci class
1/1 # Mass storage / IDE
1/80 # Mass storage / Other (80 hex)
1/4 # Mass storage / RAID
;
};
service procfs
{
system
VIRCOPY # 15
;
vm
INFO
;
uid 0;
};
service isofs
{
system
UMAP # 14
;
uid 0;
};
service hgfs
{
ipc
SYSTEM pm vfs rs vm
;
};
service vbfs
{
ipc
SYSTEM pm vfs rs ds vm vbox
;
};
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 orinoco
{
system
PRIVCTL # 4
UMAP # 14
IRQCTL # 19
DEVIO # 21
VM_MAP # 30
;
pci device 1260/3873;
pci device 1186/1300;
uid 0;
};
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 log tty ds vfs vm
pci inet lwip amddev
;
uid 0;
};
service filter
{
ipc
SYSTEM pm vfs rs ds vm
at_wini
bios_wini
;
control
at_wini
bios_wini
;
};
service hello
{
system
IRQCTL # 19
DEVIO # 21
;
ipc
SYSTEM pm rs log tty ds vm vfs
pci inet lwip amddev
;
uid 0;
};
service devman
{
uid 0;
};
service mmc
{
system
PRIVCTL # 4
IRQCTL # 19
;
# Interrupts allowed
irq
64
83
; # IRQs allowed
};
service fb
{
system
UMAP # 14
DEVIO # 21
PRIVCTL # 4
;
ipc
SYSTEM pm rs ds vm vfs
;
};
service gpio
{
system
PRIVCTL # 4
IRQCTL # 19
;
irq
29 # GPIO module 1
30 # GPIO module 2
31 # GPIO module 3
32 # GPIO module 4
33 # GPIO module 5
34 # GPIO module 6
;
};
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
bios_wini
;
};