Most modern operating systems now ship with performance tuning or profiling tools that can help you monitor CPU, memory, hard disk and network usage in real-time.
On Windows the task manager and performance monitor can be helpful in identifying system performance bottlenecks while in Unix based operating systems
top and ps are used for the same purpose. Linux distributions such as Red Hat Enterprise Linux and Fedora provide a graphical user interface System Monitor that is useful to monitor system performance.
Operating system performance tuning is about resource management to respond to individual requests. Managing operating system scalability on the other hand involves managing resource consumption with varying volumes (low to very high) of requests.
Overall operational performance metrics that are critical for the business such as response time to user requests, database, network, CPU and memory performance among other metrics should be identified and tested and logged in real-time where possible or with system deployments
For clustered environments, understanding and monitoring your cluster's performance and identifying overloads early is critical to system failure prevention.
Network configurations may contribute to performance bottlenecks and may be hard to detect. For example a user may get an error on their browser when trying to load a web application on a dial up connection while the same page may load on a broadband internet connection. The main issue in this scenario may be bandwidth and may not be obviously displayed in the error message displayed.
Identifying network architecture and infrastructure is therefore critical in performance tuning and fixing system bottlenecks.
Most modern operating systems provide you with network hardware configuration tools. Some hardware manufacturers may also provide extended network hardware configuration tools with their drivers.
Most operating systems support different communication protocols which you can tweak. Factors such as TCP buffer memory space, connection buffer limits and acknowledgment options among others should be take into account in your network design.
Deciding to turn DNS lookup on or off in your web servers can also affect your performance but may be necessary to turn on for high security environments. Factoring this and allocating necessary resources or hardware can help improve system performance.