python/psutil/TODO

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:687eac5fcf5a
1 TODO
2 ====
3
4 A collection of ideas and notes about stuff to implement in future versions.
5 "#NNN" occurrences refer to bug tracker issues at:
6 https://code.google.com/p/psutil/issues/list
7
8
9 HIGHER PRIORITY
10 ===============
11
12 * #387: system-wide connections (netstat).
13 * OpenBSD support.
14
15 * #371: CPU temperature (apparently OSX and Linux only; on Linux it requires
16 lm-sensors lib).
17
18 * #250: net ifaces speed.
19
20 * (Linux) resource limit get/set - see man prlimit.
21
22 * Process.name on Windows is slow:
23 http://stackoverflow.com/questions/6587036/
24
25 * Windows binary for Python 3.3 64-bit.
26
27 * #269: expose network ifaces RX/TW queues.
28
29
30 LOWER PRIORITY
31 ==============
32
33 * #355: Android support.
34
35 * #276: GNU/Hurd support.
36
37 * NetBSD support?
38
39 * DranflyBSD support?
40
41 * AIX support?
42
43 * examples/pidof.py (same as 'pidof' cli tool)
44
45 * examples/pstree.py (same as 'pstree' cli tool)
46 * get_threads() should also return thread names in order to implement it
47
48 * examples/taskmgr-gui.py (using tk).
49
50 * system-wide # open file descriptors:
51 * https://jira.hyperic.com/browse/SIGAR-30
52 * http://www.netadmintools.com/part295.html
53
54 * Number of system threads.
55 * Windows: http://msdn.microsoft.com/en-us/library/windows/desktop/ms684824(v=vs.85).aspx
56
57 * #357: what CPU a process is on.
58
59 * thread names:
60 * https://code.google.com/p/plcrashreporter/issues/detail?id=65
61
62
63 DEBATABLE
64 =========
65
66 * [Linux]: process cgroups (http://en.wikipedia.org/wiki/Cgroups). They look
67 similar to prlimit() in terms of functionality but uglier (they should allow
68 limiting per-process network IO resources though, which is great). Needs
69 further reading.
70
71 * cpu_percent(): current default interval is 0.1 so that by default it will
72 produce a meaningful value. It represents a trap in case the user iterates
73 over multiple processes though, as it introduces a big slowdown.
74 Should it default to 0.0?
75
76 * Rename connection ntuple's fields 'local_address', 'remote_address' to
77 'laddr', 'raddr' (note in accordance with http://bugs.python.org/issue17675)
78
79 * Process per-cpus percent (XXX Windows only?), see:
80 https://groups.google.com/forum/?fromgroups#!topic/psutil/ErrKTxAbu50
81
82 * Should we expose OS constants (psutil.WINDOWS, psutil.OSX etc.)?
83
84 * Python 3.3. exposed different sched.h functions:
85 http://docs.python.org/dev/whatsnew/3.3.html#os
86 http://bugs.python.org/issue12655
87 http://docs.python.org/dev/library/os.html#interface-to-the-scheduler
88 It might be worth to take a look and figure out whether we can include some
89 of those in psutil.
90 Also, we can probably reimplement wait_pid() on POSIX which is currently
91 implemented as a busy-loop.
92
93 * Certain systems (XXX figure out which ones exactly) provide CPU times about
94 process children. On those systems Process.get_cpu_times() might return
95 a (user, system, user_children, system_children) ntuple.

mercurial