Linux kernel manages all RAM memory in your computer. Unused memory goes into a special buffering pool, where the kernel caches all recently used data. If a process attempts to read a file and the kernel already has the file cached, reading it is as fast as reading RAM.
Filesystem-heavy task, such as compiling source code, processing video files, etc. benefit from as much free memory as possible in buffering pool. It is not uncommon today to see users with powerful systems running tiling window managers in only a few megabytes of memory. Also, with the personal computer market in decline, people tend to keep their computers longer.
In this article I continue the measurements started in part 1 and part 2 of this series.
I use free command to measure memory. It basically prints out values provided by the kernel. Of interest to us is the number on -/+ buffers/cache line, 121MB in the example below:
Measuring desktop memory
Simple Network Management Protocol (SNMP) is an Internet-standard protocol for managing devices on IP networks. net-snmp is the main SNMP implementation for Linux and BSD platforms. On Ubuntu or Debian net-snmp tools are installed as follows:
$ sudo apt-get install snmp
You can also install snmpd package. This package contains the SNMP agent.
For licensing reasons, net-snmp package installs only a small number of MIBs in /usr/share/mibs directory. A large number of standard MIBs can be installed using snmp-mibs-downloader package:
$ sudo apt-get install snmp-mibs-downloader
$ sudo download-mibs
To have the new MIBs recognized by net-snmp, edit /etc/snmp/snmp.conf file as follows:
$ cat /etc/snmp/snmp.conf
Ubuntu 13.04 comes in a number of different variants, covering a wide range of hardware platforms. I am particularly interested in these variants because my computer is a 6 years old dual-core AMD 64bit with 1GB of memory.
As the Internet stopped getting faster, two years ago I’ve decided not to buy another computer. I don’t “read” flash heavy sites, I guess nobody likes them anyway. For games, movies, and music what I have is more than enough. I do need to keep an eye on memory however. Lately, some developers started to throw into their software everything but the kitchen sink.
In my previous article I’ve tried to investigate the RAM memory requirements for running some of the most common light window managers and desktop environments available in the Linux world. Prompted by several readers, I’ve decided to include also the big, well-known memory hogs that grab most of the Linux market, i.e. KDE, Unity and Gnome.
I am using the same setup, based on virtenv. It includes its own xserver (Xephyr) and a virtualization container (LXC). The computer is an older 64-bit machine, running Ubuntu 12.04 with LXDE as desktop environment.
After I install a new version of Linux, I usually take a good look at the screen. Does it have a task bar? Can I find my window after it was minimized? The direction some desktops are going is not clear. Making it easier for current users or for the people coming from Windows or Mac is not a goal anymore. User complains are dismissed, chalking it up to the fact that people don’t like change.
Fortunately, in Linux we have plenty of other choices, and we do like change. We have no need to keep using desktops we don’t like.
I will describe some of choices in this article, and I’ll attempt to measure the RAM memory requirements. I use free command in an xterm before and after the graphic environment is started on a separate X server (Xephyr). free command prints on the screen data made available by Linux kernel. The kernel knows at any moment how much memory is using and how many buffers are available.
Updated on June 2, 2013
Ubuntu Linux is arguably the most popular Linux distribution today. Well designed and easy-to-use as a desktop, it is also an excellent choice for any kind of server infrastructure in datacenters. In fact, according to W3Tech, Ubuntu server is right now in the second position and growing fast as a webserver.
In a previous article I looked at installing a basic network router using RCP100 on a Ubuntu 12.04 computer. Today, I will take a look at using Ubuntu for some more serious SNMP work.
I do like the idea of an open-source software router, and I’ve tried several of them so far. Most open-source routers would concentrate on implementing the main IP routing protocols one by one. Administration features like CLI or SNMP seem to get less attention. There is little or no support for integrated Access Control Lists, NTP, DHCP or DNS functionality. This is in sharp contrast with the commercial routers where administration and network management are first class citizens.
RCP100 seems to break the tradition. It has a Cisco-like command line interface (CLI), and all the regular administration and management protocols. Starting with version 0.99 it also features a simple and intuitive web interface, making the router accessible to less sophisticated users and beginner administrators.
In this article I will set up a basic RCP100 IP router on a Ubuntu 12.04 computer using the web interface. This means there will be lots of pictures and no CLI commands. Networking experts will definitely get bored.
I’ve recently installed Ubuntu 12.04 Long Term Support (LTS). The main advantage of a LTS distribution is that once you clean it up, it stays like that for two years.
First step is to switch your desktop to LXDE, unless you like Unity or Gnome the Third. The recommended way is to install Lubuntu, in my case I will install LXDE on top of regular Unity. If you already have regular Ubuntu installed, it would be too much trouble to start downloading and installing everything. Also keep in mind that Lubuntu is not a LTS release, and the applications installed are different, for example Goolge Chromium instead of Mozilla Firefox, or Gnumeric instead of LibreOffice Calc. LXDE is such a small desktop component, it might be a better idea to chose your distro based on the applications it provides and switch the default desktop environment to LXDE.
$ sudo apt-get install lxde