2012/7/30 সাজেদুর রহিম জোয়ারদার <[email protected]>: > সোলারিসের কার্নেলও তো লিনাক্স নয় রে ভাই।
> আমি বারবার বলছি শুধু লিনাক্স কোন একটা পূর্নাঙ্গ ওএস নয়। আর জিএনইউ/লিনাক্স > হলো পূর্নাঙ্গ্ ওএস এর ধরন/নাম। শুধুমাত্র লিনাক্স কার্নেলটাকে আমি কেন, কখনোই > কেউ জিএনইউ/লিনাক্স বলার মতো পাগলামো করতে যাবে না। So you think a Linux OS, no matter how it is built, whether it includes the 'usable' commands from GNU or not, should be called GNU/Linux. Just because it is built on top of Linux kernel! Here are two projects, for example, busybox and Magenta. The first one, busybox, is a complete rewrite of those small tools + Linux kernel. It just does not dump the GNU tools on top of it's kernel. It implemented them completely independently for clean code and small footprint. This busybox is used widely in several products, including HD TV receiver, freezer, mobiles, networking devices, etc. It is a popular platform to build embedded devices. So it does not include GNU tools and replaces them by their own code. So do you think it is fair to call this busybox platform GNU/Linux or busybox/Linux? The Magenta project is a newcomer, it targets to be an iPhoneOS clone built with Linux kernel and Darwin userspace. Notice that there is no GNU tools in here. But it is built on top of Linux. So do you want it to call GNU/Linux? If you run the GNU uname -o on both of these non-GNU project, you will be reported that you are running GNU/Linux. That is an absolute lie. Installing GNU tools on top of Solaris or windows or blah does not make them automatically GNU/blah. But installing on linux it automatically makes it GNU/Linux. > কারন "উইন্ডোজ" একটা পূর্নাঙ্গ ওএস এর গোত্রেরই নাম। > জিএনইউ ব্যবহার করে যদি উইন্ডোজকে সাধারন ব্যবহারকারীদের জন্য কর্মক্ষম করতে > হতো তবে ওটার নামেও এইরকম জিএনইউ জুড়তে হতো বৈকি। Let's see the definition of the Operating System. The textbook definition of OS is: "An operating system (OS) is a set of software that manages computer hardware resources and provides common services for computer programs. The operating system is a vital component of the system software in a computer system. Application programs require an operating system to function." So it is a piece/collection of software that interface hardware and application software. That is, how to read/write a file in the hard disk, how to get the network communication from/to hardware to the desktop software, how to receive/send audio/video through the actual hardware and so on. All of these are done by Linux kernel itself. Linux is a monolithic kernel. It takes all the responsibilities of any kind of hardware/software interaction in a computer. That's why the drivers go directly into the kernel. Now let's have a look at what those 'useful' GNU tools do. They are tiny little file manipulation commands: ls, cd, cp, dd, mv, rm, touch, cat, mkdir; terminal settings commands: tty, stty, dircolors; system settings commands: uname, chown, chgrp; utility commands: df, du, base64, sort, tee, cut, grep; and so on. Not a single one of them talks directly to the hardware. They do not make any interface to the hardware and software. They are **application** software. Those lie idle in your /bin, /usr/bin folder forever, unless you run them by yourself. Just like your OpenOffice or Firefox browser. Hence by this definition, GNU tools are not part of Operating System. Let's take the popular belief or today's definition of OS. "The collection of software that run in background to make your daily software run, that is, make your computer usable." The GNU tools fall in this definition of OS. But then there are more important tools than GNU that are required to satisfy this definition. The X server. That is the most important piece of software in this definition, which is not GNU. But surprisingly the X people do not impose their name to be used on Linux, BSD, Solaris or any other OS where it is used to build an **Operating System**. Without this you cannot open your favourite firefox/chrome/libreoffice or even the gnome terminal will not be available to run the GNU commands. (Yes, to run GNU commands, you do not need X, I know). Also by this definition LAMP is an operating system. Therefore, in general, the distribution is the operating system. And there is another defintiion, invented by the one and only RMS and the almighty GNU. uname -o In previous post I showed that this option is only available in GNU uname. It does not exist on any other implementation. It was not there in the original UNIX uname. And if it exists in any other implementation that only is synonym to -s. > ভাই জিএনইউ থেকে যেগুলোর জন্ম সেগুলো কে জিএনইউ লাইন্সেস বা ওপেন লাইন্সেস > সমূহে যথেষ্টই উল্লেখিত/সম্মানিত করা হয়েছে এবং হয়। আর আবারো বলতে হচ্ছে যে -- > > উবুন্টু == জিএনইউ থেকে প্রাপ্ত টুলস + সফটওয়্যার + লিনাক্স কার্নেল (মূল > কার্নেল + ক্যাননিক্যাল কর্তৃক পরিমার্জিত অংশ) > উবুন্টুকে উবুন্টু বলতে তো আমি আপত্তি করছি না। কিন্তু যখনই বলা হচ্ছে কোন > জাতের অপারেটিং সিস্টেম তখন যেনো শুধুই লিনাক্সের নাম উচ্চারিত না হয়। কেননা > সেক্ষেত্রে উবুন্টু এবং লিনাক্স দুটোই সামনে/পাদপ্রদীপের আলোতে আসে। কিন্তু > সবারই জানা উচিত যে এই আজকের অবস্থানের পেছনের মহাত্মাগুলো কাঁরা এবং কি সেই > অবদান। আর তাই বারংবার বলবো উবুন্টু একটা জিএনইউ/লিনাক্স ডিস্ট্রো। No, Ubuntu is not GNU/Linux. That is why the gNewSense project exists, precisely. The gNewSense is GNU/Linux which removes the binary blobs/proprietary software from Ubuntu and markets Ubuntu in a new label. > ভুলে গেলেন কেনো দাদা যে, লিনাক্স মিন্টের ডেবিয়ান সংস্করনকে "লিনাক্স মিন্ট > ডেবিয়ান"ই বলা হয়। It is named so to distinguish the Ubuntu and Debian derivative. It's not a naming policy that Debian forces like GNU. > সেখানে জিএনইউ এর কোন প্যাকেজ বা কিছু ওইরকম চোখে পড়ে না। নিভৃতেই তাঁর কাজ > চলে এবং সাধারন ব্যবহারকারীরা সুবিধা/মজাটুকু পায়। আর তাই ইদানিং যদি কেউ মজা > করে "ঘি" খেয়ে "ঘোষ"র গায়ে তেলচিটে গন্ধ বলে বেড়াবার মতো ধৃষ্টতা দেখাতে চায় > কিংবা "ঘি" খেতে "ঘোষ"র কি দরকার? বলতে চায় তো আমি বিরক্ত হই এবং নিজের জ্ঞান > থেকে বোঝাতে চেষ্টা করি এবং আগামীতেও করবো। Every program is identified by itself only. So does GNU tools. All of them have a command line option -v or --version, that shows the name and version of it. Web servers like Apache/nginx/mongrel runs silently in the background. They do not require appending their name to an operating system to be used. To use a 3d card driver, one is not required to append their name to the operating system. It is run silently in the kernel. It does not force you to call it Intel or nVidia or AMD Linux. There are thousands of other software that run silently in the background that does not force their name on your OS to be run. And as I show previously that those GNU tools are not required to run silently in the background. They run only when user or other software asks them to run. > কাউড কম্পিউটিং শুরু হয়ে গেছে। মাইক্রোকার্নেলের শক্তিমত্তা বুঝতে আর বিস্তার > দেখতে হয়তোবা আমার এ জীবদ্দশায় সম্ভব না। কিন্তু যদি এই মেইলের লগ আরো এক শতক > পাড়ি দিতে পারে তো নিশ্চিতভাবেই সেদিনকার সেনানীদের সবাই জানবেন যে, এই > "জিএনইউ হার্ড"ই হবে তখনকার দিনের সবচাইতে শক্তিশালী কম্পিউটিং প্রাণভোমরা। Cloud computing is not a new thing. It is always there from the very beginning of the computing history. The file server, web server, etc. always existed. The clustering is not revolutionary, it is there from the very beginning of UNIX. The RAID disks system always existed. The virtual machine concept is not new. This is only a buzzword for a consumer market. They bring those existing technologies together and put pretty API on top of it and call it by a new catchy, shiny name. In tech world, this happens all the time and it is required. General users do not need to configure their file server. They can just use one from any vendor. They do not need to know what different/complex technology is used underneath. They just need a memorable name to use it. The "Cloud" is a pretty name to remember and use. Consumer cloud system has arrived in 2002 via Amazon AWS. Azure, Appengine, iCloud are just catching up. They all have different use cases but they are all clouds. OpenStack, eucaliptus, juju, etc. are tools to build open source clouds and those run on Linux happily. Hence we see that GNU hurd is a little late to join the cloud era. Linux, BSD, Windows are handling the "Cloud" for a while now. The success of Linux has not come from GNU. If GNU was not there, BSD would be used. Linux would still exist. But GNU would not be so successful if it was not picked by Linux. They had to compete with Linux, BSD and now OpenSolaris directly with their never-ready hurd, oh I mean GNU hurd, kernel. People use or forced to use GNU tools to build software for Linux. They do not do it for the love of GNU but for the limitation. One who builds something cross-platform knows the pain of using incompatible versions of these tools with the UNIX counterparts and curse Linux why they picked GNU not stick to the BSD. The GNU people are the most ungrateful, they do not recognise this. They do not understand that they are successful because of Linux, not the other way around. It is exactly the same situation as a Windows developer has no other choice than using Microsoft build tools or OS X developers has no choice other than XCode. -- M. Nasimul Haque Appliansys, Coventry, UK http://www.nasim.me.uk -- Ubuntu Bangladesh https://lists.ubuntu.com/mailman/listinfo/ubuntu-bd
