Why are there too many Linux Distros

Linux (/ˈlinəks/) is An open-source version of the UNIX operating system. It’s kind of a big deal for Servers Mainframes and Super computers.

More than 90% of today’s super computers run on a some kind of Linux. Also many small devices run on Linux even if you can’t tell they do… for example the Android OS is based on Linux.

Linux is great, it’s powering most of the webservers for your favorite websites, since it’s free, highly customizable and very reliable.

That’s great, but why are there way too many Linux distros or distributions?

To answer this question we have to define the difference between Linux and other operating systems (Windows or Mac OS). Any operating system comes with a preinstalled set of applications, a user-interface and built-in drivers. For Windows, Microsoft decides what software they’ll have built-in to Windows and how the Window Manager (The piece of software that organizes the display of windows and dialogs on your computer) will work for this specific version of windows. Microsoft has the one and only decision in this, and there’s only a limited number of customizations we can do to the Window Manager (The Look & Feel of Windows), that Microsoft allows us to change, but those changes we have to do after installing windows.

For example, if I wanted my Microsoft Windows 9 to have WinAmp installed on it out of the box, I’ll have to request Microsoft to do this. They will probably say No, since Windows has that wonderful media player (That I never use). I also cannot ask them to change the color of menus from white to grey just because I like it better that way. Same story for drivers, I don’t use printers, I don’t need Windows to have HP generic printer driver because I have a canon driver but that’s so selfish.

Now comes Linux.. Linux is a kernel (the bridge between applications and actual data processing) and a bunch of free software packages. The flexibility of the OS allows me to choose anything I want and to customize it the way I want. As a programmer, I can fetch the code of any software that my Linux is using, modify it as I wish. Then rebuild it and replace the one installed on my computer.

I can add some new packages, remove others and modify packages as much as I wish. All that is left to do is create an installation disk (or ISO image) for my current OS and distribute is the way I wish (Of course there’s a bunch of licenses that I have to read first).

As software keeps updating to add new features or fix bugs, my OS will have to keep up with the packages I’ve modified or created to keep my OS up-to-date or otherwise it’ll be discontinued just like many other Linux distros. And if my OS was found great by some developers, they’ll help me with ideas, testing and code writing to keep up and add features to my own software.

This answers the question “How is a Linux Distro created” not “Why are there so many of them?”.

As I’ve explained, I’ll most likely base my distro on an existing one to ease the integration of software packages into my OS. I’ll also have to find a team that shares my vision and finds the OS I’m creating great in order to help me develop and maintain it. It’s not that easy to maintain and develop an OS.

There are few basic Linux distros that most other ditros are based on. e.g. “Slackware Linux”, “Redhat”. you check out this Linux Distros Timeline to see how many distros have ever been developed

Speed up Windows boot time

Every time I install windows on my computer I notice it’s booting up and starting up really fast, might be done in less than a minute actually.

Later, about a month or 2 (Or sometimes less) you have to notice the startup time is really increasing. When I was younger I used to reformat my hard-disk and re-install Windows. See, I was a geek with a lot of time in hand. Until recently I found and started using a software called Soluto.

Unlike many software that claim to speed up your boot time by deleting un-needed registry keys or deleting temporary and useless files. Soluto identifies your software and tracks the ones that run during windows boot and startup and calculates the time each process needs to finish it’s startup.

After it processes your software for the first time (after the first boot) using their ‘PC Genome’ database. They identify which processes shouldn’t be in the boot, and the ones that you might not need during windows startup, and the last type… stuff you should keep in the boot.

What you do after that is your own choice. Just open the Soluto window:-

 

Click on the “Chop Boot” button, or just point to it. They have some really nice animations. And you’ll get a window that looks like:-

You can see the 3 groups of software (another one will pop out later) and in my case the green group (The ones you really won’t be missing) is all removed.

And by removed you don’t have to uninstall, Soluto gives you the option to either ‘pause’ a process (meaning it won’t run in windows boot) or you can ‘delay’ a process (meaning it’ll run a minute or two after the boot is done).

Soluto is smart and has a great database so it’ll tell you many things you might want to know about a process before you make your decision. It’ll also tell you exactly how many seconds it’s taking this process to startup.

The only thing I hate about Soluto is having to uninstall (and loose my settings) and resintall on every update they have. Which kinda sucks.

They have many other features that either don’t work or not that useful (Like choosing extensions to disable to speedup your browser startup, or Crash handling that is not working so far).

But if you want my opinion, you really should have this thing installed on your computer.

Microsoft Security Essentials. How secure is it?

Well, I’ve been using the Microsoft product ever since it was a private beta. I liked it, because it was smooth and light on my computer. Today is occurred to me. How secure is actually is.

So I looked up for some tests and came across The “Firewall Leakage Tester” a small but really useful utility for people asking the same question I’m asking.

It simple just click the “Test my firewall” button. Your firewall then should notify you that some software is attempting to connect to a remote server. Should I let it? oddly enough MSSE didn’t even mention any activity. Which means not doing what you’re NOT paying it to do. So I decided to try another freeware firewall. ZoneAlarm was the first to occur to me, I didn’t know if there was a free edition. But there actually is one, it’s called “ZoneAlarm Basic Firewall”. There also is an all you can eat “Internet security suite” at the same page.

I wasn’t really eager to use ZoneAlarm because I knew it consumed a lot of memory. But to be honest the last time I used ZoneAlarm I had a Pentium II running Windows 98. Things change in a decade you know.

I downloaded and installed ZoneAlarm and BOOM. I spent the past I think 8 hours just trying to get my Windows 7 RC to work. At first I thought it was ZA so I manually deleted the files from my Ubuntu (dual booting is a bless) the tried deleting the registry keys (through a batch file on startup) which worked but not as well as you’d think.

I restarted into Windows and it kept crashing. So I tried to beat the System and DID (Ladies & Gentlemen I AM faster than a Core2 Duo 2.33Ghz 2MB Cache) Not from the first trial of course. So at startup I tried as fast as I could to start the task manager and kill the msmp…Something process and it’s subtree. I noticed that the computer didn’t crash. So I tried Removing and reinstalling Microsoft Security Essentials But again my computer froze. So I tried again several times to beat the system (Again) this time I removed it and tried reinstalling ZA.

Things went smoothly even after trying to reboot for several times.

Oh, noooooooooow that I got ZoneAlarm to work I tried running the same utility again. But luckily ZA did ask me if I allow this software to open a connection.. Imagine if it didn’t, I’ve done would have been a waste of my Useless Thursday.

Conclusion (I’ve seen a couple of bloggers do this):

Microsoft Security Essentials Didn’t really work for me, but ZoneAlarm did 🙂

Fix Unresponsive or Frozen Linux Computers using Shortcuts

Linux systems are known for their stable operation, designed to be operational without reboot for years. However if you still manage to pull a string and freeze up your computer there are quite a few ways to get the system back to work. You can login to a virtual console, use pgrep and pkill, use xkill, system monitor and kill the offending process if you are sure about them. Or if nothing works you can hit the power button may be? But before you head towards that power button there is one last magical way to get back your system, and I am going to talk about it in this article.

First off I am sure there would be many of us who don’t know that their keyboard has a sysrq key. Is it? Or perhaps you had forgotten about it? Yes its that PrintScreen/SysRq key that we are going to MakeUseOf in this article.

What is a Magic SysRq Key

A Magic SysRq Key lets you send some low level commands independent of the system state. This means that if the system is frozen you can use these key combinations to perform certain actions and thus regain control.

So what’s the magic? Well if you are ever stuck with an unresponsive system try

Alt+PrintScreen+r+s+e+i+u+b.

Pheew! So how many hands do you need to do this? Or should you use your toes? Well, actually you only press and hold Alt and PrintScreen together, the other keys are pressed one at a time and then released. There is quite a lot happening when you do this. ‘r’ ’s’ ‘e’ ‘i’ ‘u’ ‘b’ actually stand for seperate commands:

  • r – takes the control of the keyboard back from X.
  • s – writes the data from the disc cache to the hard disk.
  • e – sends SIGTERM to all processes except init.
  • i – sends SIGKILL to all processes except init
  • u – remounts all the filesystems readonly (basically a measure to help you reboot safely)
  • b – reboots the system

As you see that pressing each letter accomplishes certain tasks, so it makes sense to press them one by one while having the Alt+PrintScreen combination depressed. Give sufficient time before pressing the next key to allow the system to perform all the tasks as requested by the Magic SysRq Key combination

Other Magic Commands

That’s not all. Alt+PrintScreen+r+s+e+i+u+b is just one special combination of the commands that helps you recover an unresponsive system. There are other commands available as well:

0 – 9
sets the console log level, controlling which kernel messages will be printed to your console so that you don’t get flooded.

b
restarts the system without making steps to ensure that the conditions are good for a safe reboot, using this key alone is like doing a cold reboot.

e
sends SIGTERM to all processes except init.

f
call Out Of Memory Killer, which will kill a process that is consuming all available memory.

h
displays help about the SysRq keys on a terminal though in actuality you can use any key except for the ones specified, to display help.

i
sends SIGKILL to all processes except init.

k
kills all processes on the current terminal.

l
sends SIGKILL to all processes, including init.

m
dumps memory info to your console.

o
shuts down the system via ACPI or in older systems, APM.

p
dumps the current registers and flags to your console.

q
dumps all timers info to your console.

r
takes keyboard and mouse control from the X server.

s
writes all data from the disc cache to the hard-discs, it is a sync and is necessary to reduce the chances of data corruption.

t
dumps a list of current tasks and info to your console.

u
remounts all mounted filesystems read-only. After using this key, you can reboot the system with Alt+SysRq+B without harming the system.

w
dumps uninterruptable (blocked) state tasks.

Alt+Printscreen is also the keyboard shortcut for screenshot of the active window under Gnome and some other window managers.Make sure you have Magic SysRq Keys enabled on your system. Magic SysRq keys/commands work only if the kernel was compiled with the CONFIG_MAGIC_SYSREQ option.

You can also use proc sysrq trigger calls to control the behavior of sysrq keys. Generally you only need to know that

echo 0 > /proc/sys/kernel/sysrq disables sysrq keys

and

echo 1 > /proc/sys/kernel/sysrq enables sysrq keys

There are other numbers with special meanings like 2 – enable control of console logging level, 4 – enable control of keyboard (SAK, unraw), 8 – enable debugging dumps of processes etc, 16 – enable sync command, 32 – enable remount read-only, 64 – enable signaling of processes (term, kill, oom-kill), 128 – allow reboot/poweroff, 256 – allow nicing of all RT tasks(control the nice level(priority) of Real Time tasks)

Alternatively adding kernel.sysrq=1 in /etc/sysctl.conf file will also enable sysrq keys.

Please be extra careful while editing configuration files.

There you have it. Your very own contingency plan. If you find the combination difficult to memorize you may write it down and paste it on monitor, or just remember “Raising Skinny Elephants Is Utterly Boring”.

Magic SysRq keys are nothing new, they have been a feature of the kernel since quite some time now. Have you ever got the chance to use them? or do you prefer some other way? Share with us in the comments.

Apple receives patent for the OS X dock

Apple has received a patent for the dock utility for launching applications in OS X. Yes, the dock has been around for the better part of a decade, but Apple applied for the patent back in 1999 and didn’t receive it until this week. The patent describes an interface for consolidating frequently used items in a "userbar." It also covers the way that items are magnified when you scroll your cursor over them.
In other words, it looks like Apple may be able to go after the makers of ObjectDock, RocketDock, sTabLauncher, Avant Window Navigator, Cairo Dock and others. Sure, those applications may not steal any code from Apple, but they’re based on the same concept.
Now, I’m not saying Apple shouldn’t have been able to patent the dock concept. I’m not going to take a position on that, one way or the other. But this is the sort of thing that can happen when it takes the US patent system 9 years to rule on a patent application.