
On _LP64, pad struct vm_amap to 128 bytes and use the additional space to hold the arrays for tiny amaps which are common. Carefully size the array allocations to avoid false sharing, and for smaller amaps try to share allocated cache lines. - Eliminate most contention due to amap_list: maintain the list in the pool cache constructor / destructor like we do for struct file. Cache the mutexes we allocate here. - Don't do PR_WAITOK mutex allocations when NOWAIT has been specified.
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
NetBSD
NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices.
Building
You can cross-build NetBSD from most UNIX-like operating systems. To build for amd64 (x86_64), in the src directory:
./build.sh -U -u -j4 -m amd64 -O ~/obj release
Additional build information available in the BUILDING file.
Binaries
Testing
On a running NetBSD system:
cd /usr/tests; atf-run | atf-report
Troubleshooting
- Send bugs and patches via web form.
- Subscribe to the mailing lists. The netbsd-users list is a good choice for many problems; watch current-users if you follow the bleeding edge of NetBSD-current.
- Join the community IRC channel #netbsd @ freenode.
Latest sources
To fetch the main CVS repository:
cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P src
To work in the Git mirror, which is updated every few hours from CVS:
git clone https://github.com/NetBSD/src.git
Additional Links
Description
Languages
C
85.3%
Roff
7.2%
Assembly
3.1%
Shell
1.7%
Makefile
1.2%
Other
0.9%