প্র: কোনও অ্যাসেম্বলি প্রোগ্রামটি অপারেটিং সিস্টেমটি ক্রাশ হওয়া থেকে থামায়?
উ: কিছুই না।
যাইহোক, অনেক চালাক প্রোগ্রামাররা বছরের পর বছরগুলিকে আরও বেশি বেশি কঠিন করার জন্য খুব চেষ্টা করেছে। দুর্ভাগ্যক্রমে, প্রতিটি চালাক প্রোগ্রামারের জন্য, এমন অনেকগুলি রয়েছে, যারা তাদের মধ্যে আরও সৃজনশীল, আরও উচ্চাকাঙ্ক্ষী এবং কখনও কখনও কেবল ভাগ্যবান হন তবে চালাক। প্রতিবার একবার একজন চৌকস প্রোগ্রামার বলে যে কেউ কারও কিছু করা উচিত নয়, করতে পারে বা করতে পারে না, সেখানকার কেউ এটিকে করার উপায় খুঁজে পাবে। মাইক্রোসফ্ট উইন্ডোজ (উদাহরণস্বরূপ) প্রায় 35 বছর ধরে চলেছে এবং আমাদের এখনও বিএসওডি (মৃত্যুর নীল স্ক্রিন) রয়েছে, যা কেবলমাত্র নির্দেশিকা যা অপারেটিং সিস্টেমটি ক্র্যাশ করেছিল।
একটু পরিভাষা দিয়ে শুরু করা যাক। কম্পিউটারে চালিত সমস্ত কিছু মেশিন কোডে করে। কীটি স্ট্রোক বা মাউস পয়েন্টারের চলন বিট, সেই বিট যা প্রদর্শনটিতে একটি পিক্সেলের রঙ পরিবর্তন করে বা একটি ফাইল থেকে একটি বাইট পড়বে এবং একটি বিট যা আপনার বুলেটটি খারাপ লোকটিকে আঘাত করেছে কিনা তা নির্ধারণ করে বা বিট স্থির করে যদি আপনার ক্রেডিট কার্ড অ্যাপ্লিকেশনটি গৃহীত হয় তবে সমস্তই মেশিন কোডের নির্দেশের ক্রম হিসাবে কার্যকর করা হয়। কিছু কাজ এত সাধারণ হয় এবং প্রায়শই এটি করা হয় যে সেগুলি করার জন্য প্রয়োজনীয় নির্দেশাবলী একত্রিত করে প্রত্যেককে এই সমাবেশটি ব্যবহার করার জন্য বোধ করা হয়। এই চাকরিগুলির গুচ্ছ যা অন্যকে কম্পিউটার ব্যবহার করতে দেয় বা সহায়তা করে তাদের অপারেটিং সিস্টেম বলা হয় তবে তাদের এবং অন্য কোনও প্রোগ্রামের মধ্যে সহজাতভাবে আলাদা কিছু নেই। এগুলি সমস্তই মেশিন কোডের নির্দেশাবলীর ক্রম।
অপারেটিং সিস্টেমগুলি কী আরও জটিল করে তোলে (এবং তাই বিধ্বস্ত হওয়ার প্রবণতা) তা হ'ল তাদের সাধারণত এমন জিনিসগুলির জন্য অ্যাকাউন্ট করতে হবে যা আপনি সাধারণত ভাবেন না। সবচেয়ে সহজ কাজের উদাহরণ হিসাবে নিন jobs আমি একটি ফাইলের শেষে একটি বার্তা লিখতে চাই। উচ্চ স্তরের ভাষায় আপনি এমন কিছু লিখবেন:
with open("myFile.txt", "w+") as f:
# do some really clever things
f.write("Goodbye cruel world!")
কীভাবে শারীরিক অবস্থাগুলি অ্যাক্সেস এবং পরিবর্তন করা হয় বা কীভাবে তাদের বিট এবং বাইট হিসাবে ব্যাখ্যা করা হয় বা সেই বাইটগুলি কীভাবে মেমরি এবং সিপিইউতে স্থানান্তরিত হয় এবং ওএস যে প্রোগ্রামগুলি দ্বারা পরিচালিত হয় সেগুলি বিশ্বাস করে সে সম্পর্কে সমস্ত বিবরণ এড়ানো যাক দৃশ্যের অন্তরালে. আপনি কীভাবে কোনও ফাইলের শেষে সংযোজন করবেন সে সম্পর্কে কেবল ভাবতে দিন। 1) ফাইলটির শেষে কোথায় রয়েছে তা সন্ধান করুন, 2) সেই অবস্থানটিতে কিছু লিখুন। সম্ভাব্য ভুল গুলো কী কী হতে পারতো? আসলে, অনেক অনেক। আপনি চালাক স্টাফ করার সময় কম্পিউটারে আর কী ঘটছে তা ভেবে দেখুন। যদি অন্য কারও দ্বারা করা হচ্ছে (অপারেটিং সিস্টেম নিজেই অন্তর্ভুক্ত) আপনি যেভাবে কাজ করছেন সেই ফাইলটি পরিবর্তন করে, তবে এই সত্যিই সহজ কাজ হঠাৎ করে পুরোপুরি আরও জটিল হয়ে যায়। ফাইলটি দীর্ঘ, ফাইলটি সংক্ষিপ্ত। ফাইলটি আর নেই। ডিস্কটি পূর্ণ,