অপারেটিং সিস্টেম, অ্যাপ্লিকেশন প্রোগ্রাম ও হার্ডওয়্যার ডিভাইস—এগুলো আলাদা আলাদা টিমে তৈরি হয়। তাই ডিফল্টভাবে OS হার্ডওয়্যারের সাথে সরাসরি যোগাযোগ করতে পারে না। এখানেই আসে ডিভাইস ড্রাইভার—এটি একটি সফ্টওয়্যার যা OS ও হার্ডওয়্যারের মধ্যে অনুবাদকের 役割 পালন করে।
ডিভাইস ড্রাইভার কী?
OS-কে হার্ডওয়্যারের অভ্যন্তরীণ ডিটেইল জানার দরকার নেই। ড্রাইভার দিয়ে OS শুধু নির্দিষ্ট হার্ডওয়্যারের সাথে ইন্টারফেস করে। ড্রাইভার না থাকলে OS-हार্ডওয়্যার যোগাযোগ নেই—ডিভাইস কাজ করবে না। ড্রাইভার ও হার্ডওয়্যার কম্পিউটার বাসের মাধ্যমে যোগাযোগ করে। ড্রাইভার OS-নির্দিষ্ট ও হার্ডওয়্যার-নির্ভর। এটিকে সফ্টওয়্যার ড্রাইভার বা শুধু ড্রাইভারও বলা হয়।
ডিভাইস ড্রাইভার কীভাবে কাজ করে?
হার্ডওয়্যার ও সফ্টওয়্যার দুটি ভিন্ন ভাষা বলতে পারে। ড্রাইভার অনুবাদক। সফ্টওয়্যার ড্রাইভকে বলে কী করতে হবে, ড্রাইভার হার্ডওয়্যারের ভাষায় তা বুঝিয়ে দেয়। সিস্টেম বুট হলে OS, ড্রাইভার ও BIOS মিলে হার্ডওয়্যার টাস্ক নির্ধারণ করে। ড্রাইভার নেইলে প্রতিটি সফ্টওয়্যারকে সব হার্ডওয়্যারের সাথে সরাসরি যোগাযোগ করতে হতো—যা অসম্ভব। তাই ড্রাইভার গেম-চেঞ্জার।
প্রোগ্রাম সাধারণ কমান্ড দিয়ে ডিভাইস অ্যাক্সেস করে। ড্রাইভার সেগুলো হার্ডওয়্যার বুঝতে পারা স্পেশালাইজড কমান্ড-এ রূপান্তর করে। ড্রাইভার সাধারণত OS-এর সাথে বান্ডেল্ড আসে বা ম্যানুফ্যাকচারার প্রদান করে। হার্ডওয়্যার/সফ্টওয়্যার আপডেট হলে পুরানো ড্রাইবার বেকার হয়ে যায়।
ভার্চুয়াল ডিভাইস ড্রাইভার
ভার্চুয়াল ডিভাইস ড্রাইভার হলো ড্রাইভারের একটি কম্পোনেন্ট যা ভার্চুয়াল ডিভাইসের সাথে OS/প্রোগ্রামের যোগাযোগ সহজ করে। একাধিক অ্যাপ একই হার্ডওয়্যার অ্যাক্সেস করলে কনফ্লিক্ট এড়াতে সাহায্য করে। ইন্টারাপ্ট সিগন্যাল পেলে ডিভাইস সেটিংস অনুযায়ী পরবর্তী 액শন নেয়।
ভার্চুয়াল ড্রাইভার কোথায় ব্যবহার হয়?
সফ্টওয়্যার দিয়ে হার্ডওয়্যার অনুকরণ করলে। উদাহরণ: VPN—ভার্চুয়াল নেটওয়ার্ক কার্ড তৈরি করে সিকিউর কানেকশন দেয়। এই কার্ডের জন্য ড্রাইভার VPN সফ্টওয়্যারই ইনস্টল করে।
সব ডিভাইসকে ড্রাইভার লাগে কি?
OS যদি হার্ডওয়্যারকে রিকগনাইজ করে, তবে আলাদা ড্রাইভার লাগে না। অজানা পেরিফেরাল (ভিডিও কার্ড, USB ডিভাইস, সাউন্ড কার্ড, স্ক্যানার, প্রিন্টার, মডেম, নেটওয়ার্ক কার্ড, কার্ড রিডার) ড্রাইভার চায়। OS-এ জেনেরিক ড্রাইভার থাকে সাধারণ ডিভাইসের জন্য (RAM, কিবোর্ড, মাউস, স্পিকার, মনিটর, হার্ড ডিস্ক, CPU, পাওয়ার সাপ্লাই, জয়স্টিক)। কিন্তু ম্যানুফ্যাকচারার দিয়া ড্রাইভার বেশি আপডেটেড হয়।
ড্রাইভার ইনস্টল না করলে কী হবে?
ডিভাইস কাজ করবে না আথবা আংশিকভাবে কাজ করবে। মাউস/কিবোর্ড বেসিক কাজ করবে, কিন্তু এক্সট্রা বাটন/স্পেশাল কী কাজ করবে না। উইন্ডোজে Device Manager-এ ড্রাইভার কনফ্লিক্ট এরর দেখাবে। ম্যানুফ্যাকচারার আপডেট দিয়ে বাগ ফিক্স করে। তাই সর্বদা লেটেস্ট ড্রাইভার রাখুন।
ড্রাইভার তभी কাজ করবে যখন সংশ্লিষ্ট হার্ডওয়্যার সিস্টেমে থাকে। ভিডিও কার্ড নেইলে ড্রাইভার ইনস্টল করলে ভিডিও কার্ড কাজ করবে না—দুইটোই লাগে।
ডিভাইস ড্রাইভারের প্রকারভেদ
প্রায় সব হার্ডওয়্যারের জন্য ড্রাইভার রয়েছে। মুখ্যভাবে ২ বিভাগ:
User Device Drivers
ব্যবহারকারীর ট্রিগার কৃত ড্রাইভার (Plug-and-Play ডিভাইস)। সিস্টেম রিসোর্স বাঁচাতে ডিস্কে লেখা হয়, কিন্তু গেমিং ড্রাইভার মেমোরিতে থাকে।
Kernel Device Drivers
OS-সহ বান্ডেল্ড জেনেরিক ড্রাইভার (প্রসেসর, মাদারবোর্ড, BIOS, কernel-সংক্রান্ত ডিভাইস)। মেমরিতে লোড হয়, ভায়ার্টুয়াল মেমরিতে যেতে পারে না। একসাথে অনেক কernel ড্রাইভার চললে সিস্টেম স্লো হয়—তাই OS মিনিমাম রিকোয়ারমেন্ট নির্ধারণ করে।
অন্যান্য প্রকার ড্রাইভার
১. Generic vs OEM Drivers
OS-সহ আসা = Generic (ব্র্যান্ড-নিরপেক্ষ)। Windows 10-এ কমন হার্ডওয়্যারের জন্য জেনেরিক ড্রাইভার রয়েছে। ম্যানুফ্যাকচারার-নির্দিষ্ট ফিচারের জন্য OEM ড্রাইভার লাগে (OS রিকগনাইজ করে না)। XP যুগে মাদারবোর্ড ড্রাইভার আলাদা ইনস্টল করত, আজকাল বিল্ট-ইন জেনেরিক ড্রাইভার থাকে।
২. Block vs Character Drivers
ডেটা রিড/রাইটের ধরন অনুযায়ী। Hard disk, CD-ROM, USB = Block Driver (ব্লক আকারে ডেটা ট্রান্সফার)। মাউস, সিরিয়াল পোর্ট ডিভাইস = Character Driver (ক্যারেক্টার বাই ক্যারেক্টার)।
ডিভাইস ড্রাইভার ম্যানেজমেন্ট
Windows-এ Device Manager সব ড্রাইভার ম্যানেজ করে। ইনস্টলেশনের পর খুব মনোযোগ লাগে না, কিন্তু বাগ ফিক্স/নতুন ফিচারের জন্য আপডেট চেক করা ভালো প্র্যাকটিস। অটোমেটিক আপডেটার প্রোগ্রামও রয়েছে। ম্যানুফ্যাকচারার ওয়েবসাইটে ড্রাইভার আপডেট ফ্রি—কभी কেনা উচিত নয়।
ড্রাইভার আপডেট গুরুত্বপূর্ণ কারণ হার্ডওয়্যার সমস্যার মুলে প্রায়শই ড্রাইভার বাগ থাকে।
সারসংক্ষেপ
- ডিভাইস ড্রাইভার OS ও প্রোগ্রামকে হার্ডওয়্যারের সাথে ইন্টারফেস করاয়।
- আধুনিক OS কমন পেরিফেরালের জন্য বিল্ট-ইন ড্রাইভার দেয়।
- অন্যান্য ডিভাইসের জন্য ম্যানুফ্যাকচারার ড্রাইভার ইনস্টল করতে হয়।
- ড্রাইভার আপডেট রাখা সিস্টেম ফাংশনিংয়ের জন্য অত্যন্ত গুরুত্বপূর্ণ।
- এক্সটার্নাল ড্রাইভার শুধু তাদের জন্য লাগে যাদের ফিচার OS রিকগনাইজ করে না।