This is an interesting visualization techniques for software analysis. From the article:

Despite being a very important part of any operating system, file systems tend to get little attention. The first part is a detail analysis of one particular Linux Kernel tree and the second is a shorter one done over a large number of file systems from Linux Kernel 2.6.0 to 2.6.29. After that there is a small section that shows some aspects of the BSD family. After conclusions there is an appendix consisting of three things: the first one explains how the file systems for Linux were compiled, the second one shows timelines for the releases of Linux Kernel, FreeBSD, NetBSD and OpenBSD; the last is a detailed map of the external symbols of the kernel modules analyzed in the second section.

A Visual Expedition Inside the Linux File Systems

The Blue Screen of Death (BSoD) is used by Microsoft Windows, after encountering a critical system error. Linux / UNIX like operating system may get a kernel panic. It is just like BSoD. The BSoD and a kernel panic generated using a Machine Check Exception (MCE). MCE is nothing but feature of AMD / Intel 64 bit systems which is used to detect an unrecoverable hardware problem. MCE can detect:

  • Communication error between CPU and motherboard.
  • Memory error – ECC problems.
  • CPU cache errors and so on.

[continue reading…]

Linux kernel version 2.6.28 has been released and available for download. The new version includes following stable and new features:

a] ext4 file system – The ext4 filesystem can support volumes with sizes up to 1 exbibyte and files with sizes up to 16 TiB. ext4 removes ext3 64-bit storage limits and adds other performance improvements.

b] Graphics Execution Manager (GEM) – It is a a modern memory manager specialized for use in device drivers for graphics chipsets. It manages graphics memory, controls the execution context and manages the Non-Uniform Memory Access (NUMA) environment on modern graphics chipsets. The “xf86-video-intel” device driver will feature GEM integration.

c] Other features – Stable USB drivers, KVM, bug fixes and other stuff.

=> Download Linux kernel 2.6.28 here. You may also find our kernel compile tutorial useful.

Linux and other Unix-like operating systems use the term “swap” to describe both the act of moving memory pages between RAM and disk and the region of a disk the pages are stored on. It is common to use a whole partition of a hard disk for swapping. However, with the 2.6 Linux kernel, swap files are just as fast as swap partitions. Now, many admins (both Windows and Linux/UNIX) follow an old rule of thumb that your swap partition should be twice the size of your main system RAM. Let us say I’ve 32GB RAM, should I set swap space to 64 GB? Is 64 GB of swap space required? How big should your Linux / UNIX swap space be?
[continue reading…]

The Advanced Configuration and Power Interface (ACPI) specification is an open standard operating system-centic device configuration and power management. You can easily reduce your PC’s power consumption through smart activity monitors. You can monitor application usage, system attributes, and user activity to more effectively use the power-management systems of your laptop or desktop computer.

Advanced Configuration and Power Interface (ACPI) and the power configuration systems built into modern computers provide a wide range of options for reducing overall power consumption. Linux and its associated user space programs have many of the tools necessary to master your PC power consumption in a variety of contexts. Much of the current documentation focuses on modifying your kernel parameters and hdparm settings to reduce unnecessary disk activity. In addition, extensive documentation is available for changing your processor settings to maximize the benefits of dynamic frequency scaling based on your current power source.

This article provides tools and code to build on these power-saving measures by monitoring your application-usage patterns. Use the techniques presented here to change your power settings based on the application in focus, user activity, and general system performance.