system revision 1.12
1$NetBSD: system,v 1.12 2017/01/13 05:45:46 dholland Exp $
2
3NetBSD System Roadmap
4=====================
5
6This is a small roadmap document, and deals with the main system
7aspects of the operating system.
8
9The following elements, projects, and goals will appear in NetBSD 8.0:
10
11The following projects may make it into future releases:
123. Full kernel preemption for real-time threads
134. POSIX shared memory
146. Better resource controls
157. Improved observability: online crashdumps, remote debugging
168. Processor and cache topology aware scheduler
17
18We'll continue to update this roadmap as features and dates get firmed up.
19
20
21Some explanations
22=================
23
243. Full kernel preemption for real-time threads on non-x86
25----------------------------------------------------------
26
27With the revamp of the kernel concurrency model, much of the kernel is
28fully multi-threaded and can therefore be preempted at any time.  In
29support of lower context switch and dispatch times for real-time
30threads, full kernel preemption is being implemented.  This has been
31implemented already for i386 and x86_64 (and is in 5.0), but needs to
32be extended to support ARM and other ports.  MIPS has this, as does
33PowerPC, but it is not yet enabled.
34
35Responsible: rmind
36
37
384. POSIX shared memory
39----------------------
40
41Implement POSIX shared memory facilities, which can be used to create
42the shared memory objects and add the memory locations to the address
43space of a process.  Changes were proposed on tech-kern, although
44there were some concerns with the kernel implementation, and so a
45different approach using wrapper functions on tmpfs is being aimed at
46for 6.0.
47
48Responsible: rmind
49
50
516. Better resource controls
52---------------------------
53
54A resource provisioning and control framework that extends beyond the
55traditional Unix process limits.
56
57Responsible: TBD
58
59
607. Improved observability: online crashdumps, remote debugging
61--------------------------------------------------------------
62
63XXX crashdumps while the system is running
64XXX firewire support in libkvm
65
66Responsible: TBD
67
68
698. Processor and cache topology aware scheduler
70-----------------------------------------------
71
72Implement the detection of the topology of the processors and caches. 
73Improve the scheduler to make decisions about thread migration
74according to the topology, to get better thread affinity and less
75cache thrashing, and thus improve overall performance in modern SMP
76systems. Code has been written, but did not show any performance
77improvement. We will continue to monitor this area.
78
79Responsible: rmind
80
81
82Alistair Crooks
83Sat Jan 14 11:40:49 PST 2012
84