BSD কি, কেন, কার জন্য

গ্রেগ লেহেই

trademarks

FreeBSD is a registered trademark of the FreeBSD Foundation.

AMD, AMD Athlon, AMD Opteron, AMD Phenom, AMD Sempron, AMD Turion, Athlon, Élan, Opteron, and PCnet are trademarks of Advanced Micro Devices, Inc.

Apple, AirPort, FireWire, iMac, iPhone, iPad, Mac, Macintosh, Mac OS, Quicktime, and TrueType are trademarks of Apple Inc., registered in the U.S. and other countries.

Intel, Celeron, Centrino, Core, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

Linux is a registered trademark of Linus Torvalds.

Motif, OSF/1, and UNIX are registered trademarks and IT DialTone and The Open Group are trademarks of The Open Group in the United States and other countries.

SPARC, SPARC64, and UltraSPARC are trademarks of SPARC International, Inc in the United States and other countries. SPARC International, Inc owns all of the SPARC trademarks and under licensing agreements allows the proper use of these trademarks by its members.

Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, Netra, OpenJDK, Solaris, StarOffice, SunOS and VirtualBox are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this document, and the FreeBSD Project was aware of the trademark claim, the designations have been followed by the “™” or the “®” symbol.

Abstract

ওপেনসোর্স সফটওয়ারের জগতে "অপারেটিং সিস্টেম" বলতে যেন লিন্যাক্স এর নামই ভেসে ওঠে। কিন্তু লিন্যাক্স’ই একমাত্র ওপেনসোর্স ইউনিক্স নয়। ইন্টারনেট অপারেটিং সিস্টেম কাউন্টারের ১৯৯৯ এর রিপোর্ট অনুযায়ী নেটওয়ার্কের সাথে যুক্ত বিশ্বের ৩১.৩% কম্পিউটারে ব্যবহার করা হয় লিন্যাক্স আর ১৪.৬% কম্পিউটারে ব্যবহৃত হয় BSD ইউনিক্স। বিশ্বের সর্ববৃহত্‍ ইন্টারনেট ভিত্তিক প্রতিষ্ঠাগুলোর কয়েকটি, যেমন, Yahoo! BSD ইউনিক্স ব্যবহার করে থাকে। বিশ্বের ব্যস্ততম FTP সার্ভার ftp.cdrom.com BSD ব্যবহার করে প্রতিদিন প্রায় ১.৪ টেরাবাইট ডাটা আদান প্রদান করে। সুতরাং BSD’র বাজার যে একেবারে ছোট, তাও নয়। এতকিছুর পরও BSD যেন লোকচক্ষুর আড়ালেই থেকে গিয়েছে।

BSD’র পরিচিতির অভাবের পেছনে কি কোন রহস্য আছে ? এই প্রশ্নটি এবং এরকম আরো কিছু চিন্তাভাবনাই এই লেখার বিষয়বস্তু।

এই প্রবন্ধে BSD ও লিন্যাক্স এর পার্থক্যগুলো এভাবে উল্লেখ করা হবে।


1. BSD কি ?

BSD অর্থ হল Berkley Software Distribution । সাধারণভাবে BSD বলতে ক্যালিফোর্নিয়া বিশ্ববিদ্যালয়, বার্কলী কতৃক প্রকাশিত সোর্সকোডকে বোঝানো হত। AT&T’র গবেষণালব্ধ ইউনিক্স অপারেটিং সিস্টেমের ওপর ভিত্তি করে এই সোর্সকোড লেখা হয়েছিল। 4.4BSD-Lite বলে পরিচিত এই সোর্সকোড ব্যবহার করে বেশ কয়েকটি ওপেনসোর্স অপারেটিং সিস্টেম প্রজেক্ট গড়ে উঠেছে। এই প্রজেক্টগুলো আরো কিছু ওপেনসোর্স প্রজেক্টের সফটওয়ার ব্যবহার করে, যার মধ্যে উল্লেখযোগ্য হল গনুহ (GNU) প্রজেক্ট। স্বয়ংসম্পূর্ণ একটি BSD অপারেটিং সিস্টেমের বিভিন্ন অংশগুলো হল ঃ

BSD কার্নেল

এটি বিভিন্ন প্রসেসের মধ্যে সময় ও মেমরী বন্টন করে এবং একাধিক প্রসেসর থাকলে তাদেরকেও নিয়ন্ত্রণ করে। এছাড়া ডিভাইস ড্রাইভারও কার্নেলের অংশ।

লক্ষণীয় ব্যাপার হল, লিন্যাক্স কার্নেল বলতে একটি কার্নেলকেই বোঝায়, কিন্তু BSD কার্নেলের সংখ্যা একাধিক এবং এদের প্রত্যেকের মাঝেই শক্তিসামর্থে বেশ পার্থক্য পরিলক্ষিত হয়।

C লাইব্রেরী

এটি হল অপারেটিং সিস্টেমের API ফাংশনের মূল সংগ্রহ।

BSD C লাইব্রেরীর উত্‍পত্তি বার্কলীর সোর্সকোড হতে, গনুহ (GNU) প্রজেক্টের কোড থেকে নয়।

বিভিন্ন ইউটিলিটি সফটওয়ার

উদাহরণস্বরূপ শেল, ফাইল ইউটিলিটি, কম্পাইলার, লিঙ্কার ইত্যাদি। বেশ কিছু ইউটিলিটি সফটওয়ার নেয়া হয়েছে GNU প্রজেক্ট থেকে, তবে সব নয়।

X WINDOW

এটি একটি গ্রাফিক্যাল কম্পিউটার ব্যবহার পদ্ধতি (GUI)।

অধিকাংশ BSD’তে X WINDOW ব্যবহৃত হয়। তবে এটি XFree86 নামক সম্পূর্ণ ভিন্ন একটি প্রজেক্টের অবদান।

2. আসল ইউনিক্স!!! সেটা আবার কি ?

BSD অপারেটিং সিস্টেমগুলো কোন ইউনিক্স ক্লোন নয়। এগুলো উদ্ভূত হয়েছে AT&T’র গবেষণালব্ধ ইউনিক্স অপারেটিং সিস্টেম হতে যা কিনা আজকের দিনের `UNIX System V’র পূর্বসূরী। ঘটনাটা একটু আশ্চর্যজনক, বিশেষ করে AT&T যখন তাদের সোর্সকোডকে কখনই ওপেনসোর্স হিসেবে উন্মুক্ত করে দেয়নি।

এটি সত্যি যে AT&T ইউনিক্স কোন ওপেনসোর্স সফটওয়ার নয়। কপিরাইটের কথা চিন্তা করলে BSD’কেও ইউনিক্স বলা যায় না। কিন্তু প্রকৃতপক্ষে AT&T তাদের ইউনিক্সে ক্যালিফোর্নিয়া বিশ্ববিদ্যালয়, বার্কলীস্থিত কম্পিউটার সায়েন্স রিসার্চ গ্রুপের সোর্সকোড ব্যবহার করেছিল। ১৯৭৬ থেকে CSRG তাদের সফটওয়ারের টেপ ছাড়তে থাকে এবং সফটওয়ারগুলোর নাম দেয়া হয়Berkley Software Distribution বা BSD

প্রথম দিককার BSD’তে শুধু ইউজার সফটওয়ারই থাকতো। কিন্তু হঠাত্‍ করেই এ অবস্থার পরিবর্তন হয় যখন Defence Advanced Research Agency (DARPA) র সাথে CSRG’র একটি চুক্তি সম্পাদিত হয়। এই চুক্তির ফলে CSRG’র উপর DARPA’র নেটওয়ার্ক প্রটোকল ARPANET আপগ্রেড করার দায়িত্ব বর্তায়। নতুন এই প্রটোকলটিকে তখন বলা হত ইন্টারনেট প্রটোকল। পরবর্তীতে এই প্রটোকলের নাম হয়ে যায় TCP/IP। TCP/IP ছিল ইন্টারনেট প্রটোকলের সবচাইতে গুরুত্বপূর্ণ অংশ। একটি স্বয়ংসম্পূর্ণ অপারেটিং সিস্টেম হিসেবে যে BSD’টি ব্যাপকভাবে ব্যবহৃত হয়েছিল, তা ছিল 4.2 BSD’র অংশ; এটা ১৯৮২ সালের কথা।

আশির দশকে বেশ কিছু নতুন ওয়ার্কস্টেশন কোম্পানী গড়ে ওঠে। এদের অনেকেই নিজস্ব অপারেটিং সিস্টেম তৈরী না করে ইউনিক্সকেই তাদের কম্পিউটারের জন্য লাইসেন্স করিয়ে নেয়। বিশেষ করে সান মাইক্রোসিস্টেম ইউনিক্সকে লাইসেন্স করিয়ে 4.2 BSD’র ওপর ভিত্তি করে SunOS তৈরী করে। যখন AT&T নিজেই ইউনিক্সকে বাণিজ্যিকভাবে বিক্রি করার অনুমতি পায়, তখন তারা প্রথমে System III এবং তার কিছুকাল পরেই System V বাজারজাত করতে থাকে। System V’র কোন নেটওয়ার্কিং কোড ছিল না, তাই প্রতিটি সংস্করণেই BSD’র সফটওয়ার অন্তর্ভুক্ত থাকতো। এর মধ্যে উল্লেখযোগ্য ছিল TCP/IP সফটওয়ার, csh শেল এবং VI এডিটর। BSD থেকে নেয়া এই সফটওয়ারগুলোকে একত্রে বলা হত Berkeley Extensions

BSD’র সফটওয়ার টেপে AT&T’র সোর্সকোড থাকতো বলে ইউনিক্স সোর্স লাইসেন্সের প্রয়োজন হত। ১৯৯০ সালের দিকে দেখা গেল যে CSRG’র অর্থসংস্থান প্রায় শেষ এবং সম্পূর্ণ BSD প্রজেক্টটিই বন্ধ হওয়ার উপক্রম। এ অবস্থায় গ্রুপের কিছু সদস্য AT&T’র মালিকানাধীন অংশটুকু বাদ দিয়ে সোর্সকোডের অবশিষ্ট অংশ প্রকাশের উদ্যোগ নেয়। উল্লেখ্য যে, BSD’র কোডের নিজস্ব অংশটুকু ছিল ওপেনসোর্স। অবশেষে নেটওয়ার্কিং টেপ ২, যা কিনা NET/2 নামে পরিচিত, প্রকাশের মাধ্যমে সোর্সকোড প্রকাশের এই উদ্যোগ বাস্তবায়িত হয়। Net/2 কোন স্বয়ংসম্পূর্ণ অপারেটিং সিস্টেম ছিল না, Net/2’র কার্নেল থেকে প্রায় ২০% কোড বাদ দেয়া হয়েছিল। CSRG’র একজন সদস্য উইলিয়াম এফ জোলিটস্‌ এই অবশিষ্ট কোডটুকু নতুন করে লেখেন এবং ১৯৯২ এর প্রথম দিকে 386BSD নামে প্রকাশ করেন। একই সময় CSRG’র প্রাক্তন সদ্যস্যদের একটি গ্রুপ Berkley Software Design Inc নামে একটি কোম্পানি গঠন করেন এবং তারপরই Net/2’র সোর্সকোডের ওপর ভিত্তি করে BSD/386 নামের একটি অপারেটিং সিস্টেমের বেটা সংস্করণ প্রকাশ করেন। এই অপারেটিং সিস্টেমটির নাম পরির্বতন করে পরে BSD/OS করা হয়।

অপারেটিং সিস্টেম প্রজেক্ট হিসেবে 386BSD কখনই ভালভাবে দাঁড়াতে পারেনি। ১৯৯৩ সালে এই প্রজেক্ট থেকে দুটি দল বের হয়ে যায় এবং NetBSDFreeBSD নামে আরো দুটি অপারেটিং সিস্টেম প্রজেক্টের সূচনা করে। মূলতঃ 386BSD’র উন্নতির ব্যাপারে অনেকে অপেক্ষা করতে রাজি না হওয়াতেই এই দুটি প্রজেক্টের আবির্ভাব ঘটে। NetBSD প্রজেক্টের কাযক্রম শুরু হয় বছরের প্রথমদিকে আর বছরের শেষে প্রকাশিত হয় FreeBSD’র প্রথম সংস্করণ। মাঝের সময়ে এই প্রজেক্ট দুটির সোর্সকোডে এত বেশি পার্থক্য দেখা দেয় যে এদেরকে আর কখনই একীভূত করা যায়নি। তাছাড়া প্রজেক্ট দুটোর লক্ষ্যও ছিল ভিন্ন, পরে যা আলোচনা করা হয়েছে। ১৯৯৬ সালে NetBSD প্রজেক্ট থেকে আরেকটি দল বের হয়ে যায় এবং এভাবেই সূচিত হয় OpenBSD প্রজেক্ট।

3. BSD কেন সুপরিচিত নয় ?

বেশ কিছু কারণে BSD অপেক্ষাকৃত অখ্যাতঃ

  1. BSD ডেভেলপাররা অধিকাংশ ক্ষেত্রেই BSD’র গুণগান প্রচারের চাইতে BSD’র সোর্সকোডের উন্নতির দিকেই বেশী মনোযোগী।

  2. লিন্যাক্সের খ্যাতির জন্য প্রকৃতপক্ষে লিন্যাক্সভিত্তিক প্রজেক্টগুলো দায়ী নয়, দায়ী হল পত্রপত্রিকা এবং লিন্যাক্সভিত্তিক সেবা প্রদানকারী বিভিন্ন প্রতিষ্ঠান। কিছুদিন পূর্ব পর্যন্তও ওপেনসোর্স BSD গুলোর এধরনের কোন সমর্থক ছিল না।

  3. BSD ডেভেলপাররা সাধারণত লিন্যাক্স ডেভেলপারদের থেকে বেশী অভিজ্ঞ। তাই BSD’কে আরো বেশী সহজ ব্যবহারযোগ্য করার ব্যাপারে তাদের আগ্রহ কম। ফলে নবীন ব্যবহারকারিদের কাছে লিন্যাক্স ব্যবহার করাই বেশী সুবিধাজনক মনে হয়।

  4. ১৯৯২ সালে BSD/386 এর বিক্রেতা BSDi এর বিরুদ্ধে AT&T একটি মামলা দায়ের করে। মামলায় AT&T অভিযোগ করে যে, তাদের কপিরাইটকৃত সোর্সকোড BSD/386 এ ব্যবহার করা হচ্ছে। অবশেষে ১৯৯৪ সালে দুপক্ষই একটি সমঝোতায় পৌছায় এবং AT&T মামলা প্রত্যাহার করে নেয়। কিন্তু তারপরও এই মামলার আতঙ্ক অনেককেই তাড়া করে ফিরতে থাকে এবং BSD থেকে দূরে থাকাটাই তারা নিরাপদ মনে করতে থাকে। কিছুদিন পূর্বে মাত্র মার্চ ২০০০ এ ওয়েবে প্রকাশিত এক প্রবন্ধে লেখা হয় যে এই মামলাটির নিষ্পত্তি হয়েছে " অতি সম্প্রতি "।

    মামলার ফলে অবশ্য যে ব্যাপারটি পরিষ্কার হয়ে যায় তা হল অপারেটিং সিস্টেমের নাম। আশির দশকে BSD পরিচিত ছিল "BSD ইউনিক্স" হিসেবে। AT&T’র মালিকানাধীন কোডের শেষ চিহ্নটুকুও বাদ দেয়াতে ইউনিক্স নামের প্রতি BSD’র আর কোন দাবি থাকলো না। একারণেই বইয়ের তালিকায় দেখতে পাবেন "the 4.3BSD UNIX operating system" এবং "the 4.4BSD operating system" এর মত নাম।

  5. এরকম একটা ধারনা অনেকের মধ্যে আছে যে, BSD প্রজেক্টগুলো খন্ডবিখন্ড হয়ে নিজেদের মধ্যে বিবাদে লিপ্ত। ওয়াল স্ট্রিট জার্নাল একবার BSD প্রজেক্টগুলোর "বলকান পরিণতির" কথা লিখেছিল। মামলার মতই, এসব ধারনাও মূলতঃ বহু পুরনো ঘটনার ওপর ভিত্তি করে গড়ে উঠেছে।

4. BSD বনাম লিন্যাক্স

BSD’র সাথে লিন্যাক্সের কোন একটি ডিস্ট্রিবিউশন, যেমন Debian লিন্যাক্সের পার্থক্যটা কোথায় ? সাধারণ ব্যবহারকারীদের জন্য পার্থক্য আসলেই খুব কম; কারণ দুটোই ইউনিক্স জাতীয় অপারেটিং সিস্টেম। তাছাড়া উভয়েই সম্পূর্ণ অলাভজনক প্রজেক্টের অবদান। ( অন্য অনেক লিন্যাক্স ডিস্ট্রিবিউশনের ক্ষেত্রে অবশ্য একথা প্রযোজ্য নয় )। পরবর্তি পরিচ্ছেদে আমরা BSD’র বিভিন্ন বৈশিষ্ট্য বর্ণনা করার পাশাপাশি লিন্যাক্সের সাথে তা তুলনা করবো। এই বর্ণনাটি সবচেয়ে ভালভাবে প্রযোজ্য FreeBSD’র ক্ষেত্রে; তবে NetBSD বা OpenBSD’র সাথেও এর পার্থক্য খুব একটা বেশি নয়।

4.1. BSD কি কারো মালিকানাধীন ?

প্রশ্নই আসে না; BSD কোন একক ব্যক্তি বা প্রতিষ্ঠানের সম্পত্তি নয়। BSD উন্নয়ন ও প্রকাশনার দায়িত্বে নিয়োজিত রয়েছে পৃথিবীব্যাপী ছড়িয়ে থাকা একদল অত্যন্ত উচ্চপ্রযুক্তি জ্ঞানসম্পন্ন ও আত্মনিবেদিত মানুষের একটি দল। তবে BSD’র কিছু অংশ অন্যান্য ওপেনসোর্স প্রজেক্টের তৈরী করা।

4.2. BSD উন্নয়ন প্রক্রিয়া

BSD কার্নেলগুলোর উন্নয়ন প্রক্রিয়া ওপেনসোর্স সফটওয়ার তৈরীর পদ্ধতিতে পরিচালিত হয়। প্রত্যেক প্রজেক্ট তাদের সমস্ত সোর্সকোডকে CVS এর মাধ্যমে সবার জন্য উন্মুক্ত করে দেয়। BSD বিষয়ক লেখালেখি এবং অন্যান্য প্রাসঙ্গিক ফাইলও BSD সোর্সের অংশ। CVS ব্যবহারকারীগণ পছন্দমত সোর্সের যেকোন সংস্করণ ডাউনলোড করতে পারেন।

পৃথিবীব্যাপী অসংখ্য ব্যক্তি BSD’র উন্নয়নের পেছনে কাজ করেন। এদেরকে মোটামুটি তিনটি ভাগে বিভক্ত করা যায়ঃ

কন্ট্রিবিউটর

এরা সোর্সকোড এবং বিভিন্ন বিবরণ লেখার কাজে নিয়োজিত। তবে BSD সোর্সে পরিবর্তনের অধিকার কন্ট্রিবিউটরদের নেই। কোন কমিটার পরীক্ষা করে সম্মতি দেবার পরই কেবল কন্ট্রিবিউটরদের করা কাজগুলো BSD সোর্সের অন্তর্ভুক্ত হয়।

কমিটার

এরা BSD সোর্সে সরাসরি পরিবর্তন করতে পারেন। নিজ নিজ ক্ষেত্রে যথেষ্ট যোগ্যতাসম্পন্ন হলেই কেবল কমিটার হওয়া যায়।

কোন কমিটার সবাইকে জানিয়ে নাকি নিজ দায়িত্বে BSD সোর্সে পরিবর্তন করবেন তা তার বিচার বিবেচনার ওপর নির্ভরশীল। ভুল হওয়ার কোন সম্ভাবনাই না থাকলে অভিজ্ঞ কমিটারগণ সকলের সম্মতি নেয়ার প্রয়োজন বোধ করেন না। উদাহরণস্বরূপ ডকুমেন্টেশন প্রজেক্টের একজন কমিটার যেকোন সময় বানান বা ব্যাকরণগত ভুল সংশোধন করতে পারেন, এজন্য অন্যান্য কমিটারদের সম্মতি নেয়াটা অর্থহীন। অন্যদিকে একজন ডেভেলপার যখন জটিল ও দীর্ঘমেয়াদী প্রভাব ফেলতে সক্ষম কোন পরিবর্তন করেন বা নতুন কিছু যোগ করেন তখন তা পরীক্ষার জন্য সকলের সামনে পেশ করাটাই প্রচলিত নিয়ম। খুবই বিরল কিছু ক্ষেত্রে অবশ্য মূখ্য রূপরেখা প্রণয়নকারীর (Principal Architect) দায়িত্বপ্রাপ্ত কেন্দ্রীয় কমিটির একজন সদস্য কোন কমিটারের করা পরিবর্তনকে বাদ দিতে পারেন; এই ব্যাপারটিকে বলা হয় "Backing Out"। BSD সোর্সে কোন পরিবর্তন করা হলে তা প্রত্যেক কমিটারকেই ইমেইল এর মাধ্যমে জানানো হয়। ফলে গোপনে কোন পরিবর্তন করা কখনই সম্ভব নয়।

Core Team বা কেন্দ্রীয় কমিটি

FreeBSD এবং NetBSD উভয় প্রজেক্টেরই নিজস্ব কেন্দ্রীয় কমিটি রয়েছে, যাদের দায়িত্ব হল প্রজেক্টের সামগ্রিক দিক দেখাশোনা করা। কেন্দ্রীয় কমিটির ভূমিকা কোন সুনির্দিষ্ট, সুঘোষিত গন্ডীতে আবদ্ধ নয়। সাধারণত ডেভেলপাররাই কেন্দ্রীয় কমিটির সদস্য নির্বাচিত হন; তবে কমিটির প্রত্যেক সদস্যকেই যে ডেভেলপার হতে হবে এমন কোন কথা নেই। বিভিন্ন BSD প্রজেক্টের কেন্দ্রীয় কমিটির ভূমিকায় পার্থক্য থাকলেও প্রতিটি প্রজেক্টের দিকনির্দেশনায় সাধারণ একজন কমিটার অপেক্ষা কেন্দ্রীয় কমিটির একজন সদস্যের কথার মূল্য অনেক বেশি।

BSD প্রজেক্টগুলোর এধরনের পরিচালনা পদ্ধতির সাথে লিন্যাক্সের বেশ কিছু পার্থক্য রয়েছে ঃ

  1. সম্পূর্ন প্রক্রিয়াটি কোন একক ব্যক্তির নিয়ন্ত্রাণাধীন নয়। কার্যত অবশ্য এটা খুব বড় কোন পার্থক্য নয়, কারণ BSD প্রজেক্টের মূখ্য রূপরেখা প্রণয়নকারী (Chief Architect) কমিটারদের করা যেকোন পরিবর্তনকে বাদ দিতে পারেন। তাছাড়া লিন্যাক্সের ক্ষেত্রেও বেশ কিছু ব্যক্তির সোর্সকোড পরিবর্তনের অধিকার আছে।

  2. BSD সোর্সকে কেন্দ্রীয়ভাবে সংরক্ষণ করা হয়। ফলে একটিমাত্র সাইট থেকেই সমগ্র অপারেটিং সিস্টেমের যেকোন সংস্করণ পাওয়া যায়।

  3. শুধুমাত্র কার্নেল নয় বরং সম্পূর্ন অপারেটিং সিস্টেমের পেছনেই BSD প্রজেক্টগুলো কাজ করে। তবে এটি খুব বড় কোন সুবিধা নয়, কারণ অ্যাপলিকেশন সফটওয়ার ছাড়া লিন্যাক্স বা BSD কোনটিই আমাদের কোন কাজে আসবে না। আর BSD’তে ব্যবহৃত অ্যাপলিকেশন সফটওয়ারগুলো প্রায়শঃই লিন্যাক্সেও ব্যবহৃত হয়।

  4. নিয়মতান্ত্রিকভাবে একটিমাত্র CVS ব্যবহার করায় BSD’র উন্নয়ন প্রক্রিয়া বেশ সরল। শুধুমাত্র প্রকাশের তারিখ বা সংস্করণ সূচক সংখ্যা ব্যবহার করেই যেকোন BSD সোর্সকে খুজে বের করা যায়। CVS ব্যবহার করে প্রতিদিন প্রায় ১০০ বার BSD সোর্সকে পরিবর্তন করা হয়। এসব পরিবর্তনের অধিকাংশই অবশ্য খুবই ক্ষুদ্র।

প্রতিটি BSD প্রজেক্টই তাদের অপারেটিং সিস্টেমের তিন প্রকারের সংস্করণ প্রকাশ করে। লিন্যাক্সের মতই প্রতিটি সংস্করণকে একটি সংখ্যা দিয়ে নির্দেশ করা হয়, যেমন ১.৪.১ বা ৩.৫। তাছাড়া সংস্করণসূচক সংখ্যার শেষে আরো একটি শব্দ যোগ করা হয়ঃ

  1. বর্তমানে যে সংস্করণটির উন্নয়নের জন্য কাজ চলছে, তাকে বলা হয় CURRENT। FreeBSD প্রজেক্টে CURRENT এর পূর্বে একটি সংখ্যা থাকে, যেমন FreeBSD 0.5-CURRENT। NetBSD প্রজেক্টের নামকরণ পদ্ধতি কিছুটা ভিন্ন; অভ্যন্তরীন পরিবর্তন বোঝানোর জন্য এই প্রজেক্টে সংস্করণ সূচক সংখ্যার শেষে একটি অক্ষর যোগ করা হয়, যেমন - NetBSD 1.4.3G। OpenBSD প্রজেক্টে কোন সংস্করণ সূচক সংখ্যা ব্যবহৃত হয়না, যেমন - OpenBSD-current। BSD’তে যা কিছু পরিবর্তন করা হয় বা যোগ করা হয় তার সবই CURRENT সংস্করণেই প্রথম অন্তর্ভূক্ত হয়।

  2. প্রতি বছর নির্দষ্ট সময় অন্তর দু থেকে চারবার প্রতিটি BSD প্রজেক্ট তাদের অপারেটিং সিস্টেমের RELEASE সংস্করণ প্রকাশ করে। এই সংস্করণ সিডিতে পাওয়া যায় এবং FTP সাইট থেকেও ডাউনলোড করা যায়। RELEASE এর উদাহরণ হল OpenBSD 2.6-RELEASE এবং NetBSD 1.4-RELEASE। RELEASE সংস্করণ প্রকাশ করা হয় সাধারণত সাধারণ ব্যবহারকারীদের জন্য এবং এটিই সর্বাপেক্ষা বেশি ব্যবহৃত হয়। NetBSD প্রজেক্টও তাদের অপারেটিং সিস্টেমের প্যাচ (Patch) সংস্করণ প্রকাশ করে। এই সংস্করণের নামের শেষে তৃতীয় একটি সংখ্যা ব্যবহৃত হয়, যেমন - NetBSD 1.4.2

  3. RELEASE সংস্করণে ভুল (BUG) পাওয়া গেলে তা সংশোধন করে CVS এ অবস্থিত মূল BSD সোর্সের অন্তর্ভুক্ত করা হয়। ফলে যে নতুন BSD সংস্করণ পাওয়া যায় তাকে FreeBSD র ক্ষেত্রে বলা হয় STABLE। তবে NetBSD ও OpenBSD’র ক্ষেত্রে RELEASE নামই চালু থাকে। একটি নির্দিষ্ট সময় ধরে CURRENT সংস্করণে পরীক্ষানিরীক্ষার পর কিছু কিছু নতুন উপদান অনেক সময় RELEASE সংস্করণেও যোগ করা হয়।

4.3. BSD’র রকমফের

লিন্যাক্স ডিস্ট্রিবিউশনের সংখ্যা অনেক হলেও ওপেনসোর্স BSD’র সংখ্যা মাত্র তিনটি। প্রতিটি BSD প্রজেক্টেরই নিজস্ব সোর্স সংগ্রহ এবং কার্নেল রয়েছে। কার্যত অবশ্য দেখা যায় যে বিভিন্ন লিন্যাক্সে ব্যবহৃত অ্যাপলিকেশন সফটওয়ারে যতটুকু পার্থক্য রয়েছে, বিভিন্ন BSD’তে ব্যবহৃত অ্যাপলিকেশনের মাঝে পার্থক্য তার থেকেও কম।

বিভিন্ন BSD প্রজেক্টের লক্ষ্য ও উদ্দেশ্যকে ছকে ফেলে পৃথক করাটা বেশ কঠিন। মূল ব্যাপারগুলো অনেকটা এরকম ঃ

  • FreeBSD’র লক্ষ্য হল উচ্চক্ষমতা ও সহজ ব্যবহারযোগ্যতা। ইন্টারনেটভিত্তিক সংস্থাগুলোর মাঝে এটি বিশেষভাবে জনপ্রিয়। পিসি এবং কম্প্যাক কর্পোরেশনের আলফা কম্পিউটারে FreeBSD চালানো যায়। অন্যান্য BSD থেকে FreeBSD ব্যবহারকারীর সংখ্যা অনেক বেশি।

  • NetBSD প্রজেক্টের লক্ষ্য হল বিভিন্ন মডেলের কম্পিউটারে তাদের অপারেটিং সিস্টেমকে চালাতে পারা; তাই তাদের মূলমন্ত্রই হল "of course it runs NetBSD" অর্থাত্‍ "নিশ্চয় NetBSD এই কম্পিউটারটিকে চালাতে পারে"। ছোট্ট পামটপ থেকে শুরু করে শক্তিশালী বড়মাপের সার্ভার - সবকিছুতেই আজ NetBSD চালানো যায়। এমনকি একসময় নাসা (NASA) কর্তৃক পরিচালিত নভোযানেও NetBSD ব্যবহৃত হয়েছে। বিশেষ করে পুরনো ধরনের যেসব কম্পিউটার ইন্টেল প্রসেসর ব্যবহার করে না, সেসব চালানোর জন্য NetBSD একটি চমত্‍কার অপারেটিং সিস্টেম।

  • OpenBSD’র লক্ষ্য নিশ্ছিদ্র নিরাপত্তা এবং সোর্সকোডের নির্ভূলতা। ওপেনসোর্স চিন্তাধারা অনুসরণের পাশাপাশি কঠিন সর্তকতার সাথে সোর্সকোড পরীক্ষার ফলে OpenBSD’র নিরাপত্তা ও নির্ভুলতা একটি প্রমাণিত ও স্বীকৃত সত্য। এজন্য নিরাপত্তার ব্যাপারে বিশেষভাবে সচেতন বিভিন্ন প্রতিষ্ঠান, যেমন - ব্যাংক, শেয়ার বাজার, মার্কিন সরকারি দপ্তর - এদের কাছে OpenBSD বিশেষভাবে সমাদৃত। NetBSD’র মত OpenBSDও বেশকিছু মডেলের কম্পিউটারে চলতে সক্ষম।

এছাড়াও ওপেনসোর্স নয় এরকম রয়েছে আরও দুটি BSD। এরা হল BSD/OS এবং অ্যাপল কর্পোরেশনের Mac OS X

  • 4.4 BSD থেকে উদ্ভুত অপারেটিং সিস্টেমগুলোর মধ্যে BSD/OS সবচেয়ে প্রাচীন। যদিও এটি ওপেনসোর্স নয়, কিন্তু বেশ অল্প খরচেই এর সোর্সকোড লাইসেন্স কেনা যায়। FreeBSD’র সাথে BSD/OS এর প্রচুর মিল রয়েছে।

  • অ্যাপল কম্পিউটার কর্পোরেশনের ম্যাকিন্টশ কম্পিউটারে ব্যবহৃত অপারেটিং সিস্টেমের সর্বশেষ সংস্করণ হল MacOS X। এই অপারেটিং সিস্টেমটির কার্নেল ব্যাতীত অন্যান্য অংশ ওপেনসোর্স নয়। অ্যাপল কর্পোরেশনের প্রধান কয়েকজন ডেভেলপারের FreeBSD সোর্সকোড পরিবর্তনের অধিকার রয়েছে।

4.4. BSD ও গনুহ (GNU) পাবলিক লাইসেন্সের পার্থক্য

লিন্যাক্সের লাইসেন্স হল GNU General Public License বা GPL। GPL এর উদ্দেশ্য হল ওপেনসোর্স নয় এধরনের সকল সফটওয়ারকে ঝেঁটিয়ে বিদায় করা। GPL সফটওয়ারের ওপর ভিত্তি করে নির্মিত নতুন কোন সফটওয়ারের সোর্সকোড প্রকাশ করতে সফটওয়ার নির্মাতা বাধ্য। কিন্তু BSD লাইসেন্স এতটা কঠোর নয়। ফলে BSD লাইসেন্স ব্যবহার করে সফটওয়ারের শুধুমাত্র বাইনারি বা কম্পাইল্ড সংস্করণও প্রকাশ করা সম্ভব। বিশেষ কর Embedded অ্যাপলিকেশনের জন্য এই ব্যবস্থা খুবই সুবিধাজনক।

4.5. আর যা কিছু জানা দরকার

যেহেতু BSD’তে চলতে সক্ষম অ্যাপলিকেশন সফটওয়ারের সংখ্যা লিন্যাক্স অপেক্ষা কম, তাই BSD ডেভেলপাররা BSD’তেই লিন্যাক্সের সফটওয়ার চালাবার জন্য একটি প্যাকেজ তৈরী করেছেন। এই প্যাকেজের অংশ হল লিন্যাক্সের C লাইব্রেরী এবং BSD কার্নেলকে প্রয়োজনীয় পরিবর্তনের ব্যবস্থা। এই পরিবর্তনের ফলে BSD কার্নেল লিন্যাক্সের সিস্টেম কল অনুযায়ী কাজ করতে পারে। একই গতির একটি BSD ব্যবহারকারী কম্পিউটার ও একটি লিন্যাক্স ব্যবহারকারী কম্পিউটারে লিন্যাক্স ভিত্তিক অ্যাপলিকেশন সফটওয়ার চালালে সফটওয়ারটির কার্জদক্ষতাতে তেমন কোন পার্থক্য পরিলক্ষিত হয় না।

লিন্যাক্সের তুলনায় BSD’কে আপগ্রেড করা অপেক্ষাকৃত সহজ। কারণ প্রতিটি BSD অপারেটিং সিস্টেম একটিমাত্র গোষ্ঠীর নিয়ন্ত্রণাধীন, অন্যদিকে বিভিন্ন লিন্যাক্স ডিস্ট্রিবিউশন বিভিন্ন গোষ্ঠী বা প্রতিষ্ঠানের নিয়ন্ত্রণাধীন। BSD’তে যখন লাইব্রেরী আপগ্রড করা হয় তখন পূর্ববর্তী লাইব্রেরীর জন্যও উপযুক্ত মডিউল দেয়া হয়। ফলে কয়েক বছরের পুরনো সফটওয়ারও কোন সমস্যা ছাড়াই চালানো যায়।

4.6. তাহলে কি BSD, না লিন্যাক্স ব্যবহার করবো ?

BSD এবং লিন্যাক্সের মাঝে বিভিন্ন পার্থক্য থাকলেও বাস্তবে এর প্রভাব কতটুকু ? BSD কার জন্য আর লিন্যাক্সই বা কার জন্য ?

এই প্রশ্নের জবাব দেয়া খুবই কঠিন। নিচের পরামর্শগুলো হয়তো কিছুটা সাহায্য করতে পারেঃ

  • যদি আপনি এ মুহূর্তে কোন ওপেনসোর্স অপারেটিং সিস্টেম ব্যবহার করে সন্তুষ্ট থাকেন, তবে তা পরিবর্তনের পেছনে তেমন কোন যুক্তি নেই।

  • BSD অপারেটিং সিস্টেমগুলোর মধ্যে বিশেষ করে FreeBSD ব্যবহার করে লিন্যাক্স অপেক্ষা বেশি সুবিধা পাওয়া সম্ভব। তবে এটি সবক্ষেত্রে সত্য নয়। কখনো কখনো লিন্যাক্স হয়তো FreeBSD থেকেও ভাল ফল দিতে পারে।

  • নির্ভরযোগ্যতার জন্য BSD অপারেটিং সিস্টেমগুলোর দীর্ঘদিনের খ্যাতি আছে। সোর্সকোডে দীর্ঘ ব্যবহারজনিত অভিজ্ঞতার প্রতিফলনই এর মূল কারণ।

  • BSD লাইসেন্স অনেকক্ষেত্রেই GPL লাইসেন্স অপেক্ষা অধিক সুবিধাজনক।

  • লিন্যাক্সের সফটওয়ার BSD’তে চালানো গেলেও তার উল্টোটা সত্যি নয়। দু দুটো অপারেটিং সিস্টেমের সফটওয়ার চালাতে পারায় BSD’র সফটওয়ারের সংখ্যা লিন্যাক্স থেকেও বেশি।

4.7. BSD সংক্রান্ত সেবা ও প্রশিক্ষণ

BSDi সবসময়ই BSD/OS সংক্রান্ত সেবা দিয়ে এসেছে। সম্প্রতি তারা FreeBSD ভিত্তিক সেবা দেয়ারও ঘোষণা দিয়েছে।

এছাড়া FreeBSD, NetBSD ও OpenBSD’র ব্যাপারে পরামর্শ দিয়ে থাকেন এরকম ব্যক্তিদের তালিকাও প্রত্যেক প্রজেক্টের নিকট থেকে পাওয়া যায়।