上一篇《搭积木做操作系统》提到了小工具,这里就列举一下著名的GNU相关资源,可以供个人学习研究。
https://www.gnu.org/software/software.html#allgnupkgs
一个学习coreutils的网站,针对很多小工具进行代码分析。
http://www.maizure.org/projects/decoded-gnu-coreutils/
binutils工具,他们是定位分析系统的主要工具,特别是可执行文件的分析。
https://www.gnu.org/software/binutils/
gnu在线手册,比linux下的man xxx要新,供学习参考使用。
https://www.gnu.org/manual/manual.html
解释了自由软件,免费软件,共享软件,开源软件等的区别。
https://www.gnu.org/philosophy/categories.zh-cn.html
busybox也是一个很好的学习小工具的资源,在嵌入式设备上应用广泛。
查看/proc文件系统的工具集,比如 ps, top, vmstat, w, kill, free, slabtop, pmap, and skill
https://gitlab.com/procps-ng/procps
http://procps.sourceforge.net/
http://procps.sourceforge.net/faq.html
procps is a set of command line and full-screen utilities that provide information out of the pseudo-filesystem most commonly located at /proc.
This pseudo-filesystem provides a simple interface to the kernel data structures. The programs of procps generally concentrate on the structures that describe the processess running on the system.
The following programs are found in procps:
free - Report the amount of free and used memory in the system
kill - Send a signal to a process based on PID
pgrep - List processes based on name or other attributes
pkill - Send a signal to a process based on name or other attributes
pmap - Report memory map of a process
ps - Report information of processes
pwdx - Report current directory of a process
skill - Obsolete version of pgrep/pkill
slabtop - Display kernel slab cache information in real time
snice - Renice a process
sysctl - Read or Write kernel parameters at run-time
tload - Graphical representation of system load average
top - Dynamic real-time view of running processes
uptime - Display how long the system has been running
vmstat - Report virtual memory statistics
w - Report logged in users and what they are doing
watch - Execute a program periodically, showing output fullscreen