-
Notifications
You must be signed in to change notification settings - Fork 14
/
TODO
83 lines (74 loc) · 2.14 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
-*- Mode: Outline -*-
* Demos
- VM: dope, scout, fbcon, xserver, skype
- nethack/slashem
- tetris
* Usability
- command language/shell
- improve vmm command line arguments
- C-friendly syscall bindings
- move VMM to end of guest memory
- framebuffer view of different VMs or nitpicker
* VMM Models
- HPET
- USB pass through
- Sound
- unneeded: 1394, TPM, BT, FDC, ISADMA, SCSI, IDE, 3D Graphics, USB models
* VMM fixes
- VBIOS
- clear VGA memory on reboot to avoid showing garbage
- copyin/out for x86emu
- PCI routing tables and PNP
- rework MemRegion interface
- instruction emulator
- iret/longjmp
- task switch
- iopbm
- catch #NE
- VMXON (causes GP instead of UD?)
- ACPI
- fixed registers
- DSDT
* Sigma0
- external services - one portal per service
- provide service on many CPUs
- virtual PCI bus per domain
- get files to boot from disk
- multithreaded booting
- have a thread pool that executes param-functions in parallel
- synchronization of different parameters via barrier / wait
- logging: log to tracebuffer and show only filtered output
- filtered after time
- filtered after parameter
- change filter per key and per cmdline for serial output
* HV Features
- kill domain -> full restart possible
- unmap -> direct FB mapping and join-pages
- timeslice local timer -> CPU local efficient
- multiple VMs -> nested virtualization
* Drivers
- Driver PDs. Interface?
- ATAPI support
- Linux driver VMs without IO-MMUs
** USB
- EHCI/OHCI/UHCI/XHCI
- USB passthrough
** USB HID
- USB keyboard and mice speak a simplified BOOT protocol, normally used by the BIOS
- need UHCI/OHCI low level drivers to scan the bus and request keycodes
- should allow to get rid of legacy USB support and its SMIs
* Disk
- Buffer cache
- partition support
- volume management?
- backing store in filesystem
- CoW disk
- disk scheduling
- SR-IOV AHCI
- iSCSI/SBP-2/network block device as backing store
* Network
- e1000 and rtl8139 driver
- IP over 1394
- TCP/IP stack (uIP6)
- optimized software switch (zero copy)
- PXE booting