Preload: How To Speed Up Your Linux Application Loading Time

Posted on in Categories Howto, Linux, Linux desktop last updated February 28, 2008

preload is a free Linux. It runs in background and records statistics about usage of more frequently-used programs. These programs are loaded into a Linux memory. Thus results is faster application startup times. From the project home page:

preload is an adaptive readahead daemon. It monitors applications that users run, and by analyzing this data, predicts what applications users might run, and fetches those binaries and their dependencies into memory for faster startup times.

preload-speed-graph.png
(Fig. 01: preload in action – saving time while loading Linux apps)

There is a nice tutorial published by Techthrob about installing and configuring Techthrob under Debian / Ubuntu Linux systems.

=> Drastically Speed up your Linux System with Preload

Linux Increase Process Identifiers Limit with /proc/sys/kernel/pid_max

Posted on in Categories Howto, Linux, Linux Scalability, Networking, Troubleshooting, Tuning last updated November 3, 2007

Yesterday I wrote about increasing local port range with net.ipv4.ip_local_port_range proc file. There is also /proc/sys/kernel/pid_max file, which specifies the value at which PIDs wrap around (i.e., the value in this file is one greater than the maximum PID). The default value for this file, 32768, results in the same range of PIDs as on earlier kernels (<=2.4). The value in this file can be set to any value up to 2^22 (PID_MAX_LIMIT, approximately 4 million).

nixCraft FAQ Roundup May 06, 2007

Posted on in Categories FAQ last updated May 6, 2007

Recently updated/posted Linux and UNIX FAQ (mostly useful to Linux/UNIX new administrators or users) :

Enjoy!

Download advanced Linux programming book PDF version

Posted on in Categories C Programming, Download of the day, GNU/Open source, Howto, Links, Open source coding last updated February 20, 2007

If you are a developer for the GNU/Linux system, this book will help you to write and/or develop GNU/Linux software that works the way users expect it to.

Advanced Linux Programming is published under the Open Publication License, Version 1, no options exercised. (Due to an oversight in final production, the copyright notice on the book is incorrect.) The full text may be downloaded from this site. Code samples in the book are covered by the GNU General Public License and are also available.

Topics

Chapter 01 – Advanced Unix Programming with Linux
Chapter 02 – Writing Good GNU/Linux Software
Chapter 03 – Processes
Chapter 04 – Threads
Chapter 05 – Interprocess Communication
Chapter 06 – Mastering Linux
Chapter 07 – The /proc File System
Chapter 08 – Linux System Calls
Chapter 09 – Inline Assembly Code
Chapter 10 – Security
Chapter 11 – A Sample GNU/Linux Application

Download link

=> Advanced Linux programming book, by Mark Mitchell, Jeffrey Oldham, Alex Samuel (via Digg)

Download One page Linux reference (Linux Anatomy)

Posted on in Categories Links, Linux last updated November 5, 2006

This is a full-size PDF version ( poster ) from Oreilly.

Anatomy of a Linux System poster try to put most important things together. The result is indeed encyclopedic. Supporting the illustration are 19 written topics, with brief historical and educational descriptions of technologies such as Peer-to-Peer Communication, XML and HTML, Samba, Unix Command-Line Utilities, and even Java. Each topic has a list of key Web sites and useful books, including titles that don’t belong to O’Reilly–part of Tim’s insistence that the poster serve as a complete Linux resource. The poster also lists Linux magazines, conferences, major distributors, and, of course, major contributors.

Download One page Linux reference (Linux Anatomy)

=> Download Link [oreillynet.com] (163K)

Re-read The Partition Table Without Rebooting Linux System

Posted on in Categories File system, Linux, RedHat/Fedora Linux, Sys admin, Tips, Troubleshooting, Ubuntu Linux last updated May 8, 2006

If you are using hot swappable hard disk and created new partition using fdisk then you need to reboot Linux based system to get partition recognized. Without reboot you will NOT able to create filesystem on your newly created or modified partitions with the mke2fs command.

However with partprobe command you should able to create a new file system without rebooting the box. It is a program that informs the operating system kernel of partition table changes, by requesting that the operating system re-read the partition table.

Moving /home Data From Old System To a New Linux System

Posted on in Categories Howto, Linux last updated May 1, 2006

Recently a friend of mine, brought a new Laptop. He installed Red Hat Enterrpise Linux workstation 4.0. However, after installation he realized that he lost all his Mozilla thunderbird emails and Firefox bookmarks, chat client logs and other files.

I told him just copy all old files from /home/$you to a new system /home/$you directory. He was trying some age-old tutorial from net, which explains how to copy files using tar and restore it back to new system. During this procedure, he was messing up with file system permission.

How do I find out if my Linux server CPU can run a 64 bit kernel version (apps) or not?

Posted on in Categories CentOS, Debian Linux, Gentoo Linux, Howto, Linux, Linux desktop, RedHat/Fedora Linux, Sys admin, Tips, Troubleshooting last updated April 7, 2006

It happens many times. Often new Linux system administrators and user(s) get confused. They are not able to determine if Linux system can run a 64 bit kernel version (and application) or not. There is simple way to find out:

(a) Ask your hardware vendor

(b) Find out yourself by reading manuals

(c) Or run the following commands:
Here is output from one of my production Dual Opteron server:
$ less /proc/cpuinfo
Output:

processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 5
model name      : AMD Opteron (tm) Processor 848
stepping        : 10
cpu MHz         : 2197.161
cache size      : 1024 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall
nx mmxext lm 3dnowext 3dnow
bogomips        : 4308.99
TLB size        : 1088 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp

processor       : 1
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 5
model name      : AMD Opteron (tm) Processor 848
....
...
*** Output truncated ***
....

Look for flag entry in above output. If you see lm flags then you will able to run 64 bit kernel and applications. Now consider output from my Workstation (32 bit system you will not able to find out lm [long mode] flag):

$ less /proc/cpuinfo

Output:

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 1
model name      : Intel(R) Celeron(R) CPU 1.70GHz
stepping        : 3
cpu MHz         : 1717.118
cache size      : 128 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
bogomips        : 3437.80

You can also type command uname command to find out this info:

$ uname -a

Output:

Linux ora100 2.6.5-7.252-smp #1 SMP Tue Feb 14 11:11:04 UTC 2006 x86_64 x86_64 x86_64 GNU/Linux

The x86_64 confirms you can run 64 bit apps. You can also use live CD such as Knoppix to boot and find out this info.