netbsd: update README.md (#694)

netbsd: update README.md
This commit is contained in:
nia 2021-07-15 04:41:42 +00:00 committed by GitHub
parent f21f81b2de
commit 3bc73aa088
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,29 +1,33 @@
NetBSD support in htop(1)
===
This implementation makes NetBSD use htop(1) without the need of mount_procfs(8).
This implementation utilizes kvm_getprocs(3), sysctl(3), etc, eliminating the
need for mount_procfs(8) with Linux compatibility enabled.
The implementation has been copied over and modified from the OpenBSD
implementation in htop(1).
The implementation was initially based on the OpenBSD support in htop(1).
Current implementation mimics the procfs based implementation in stats
collection.
Make NetBSD no longer masquerade as Linux.
What works
Notes on NetBSD curses
---
* Builds in NetBSD without any additional patch
* Uses sysctl(3) and kvm(3) to get basic information
* Shows basic meters CPU / Memory / Swap
* Shows basic process listing
NetBSD is one of the last operating systems to use and maintain its own
implementation of Curses.
What needs to be tested
htop(1) can be compiled against either ncurses or NetBSD's curses(3).
In order for NetBSD's libcurses to be used, htop(1) must be configured with
`--disable-unicode`. This is necessary because htop(1) with Unicode enabled
directly accesses ncurses's cchar_t struct, which has different contents
in NetBSD's curses.
Versions of libcurses in NetBSD 9 and prior have no mouse support
(this is an ncurses extension). Newer versions contain no-op mouse functions
for compatibility with ncurses.
What needs improvement
---
* Memory being split into used/buffers/cache
* Basic features of htop(1) like kill / nice / sort / search works as expected
* If the meter displays are working as expected
* If the process states are displayed correctly
* If thread information and count are displayed correctly
* Kernel and userspace threads are not displayed or counted -
maybe look at NetBSD top(1).
* Battery display - use envsys(4).
* Support for compiling using libcurses's Unicode support.
* Support for fstat(1) (view open files, like lsof(8) on Linux).
* Support for ktrace(1) (like strace(1) on Linux).