এলবিএ চালু হওয়ার আগে, সিএইচএস কেন শুরু হয় 0,0,1
এবং হয় না 0,0,0
?
এলবিএ চালু হওয়ার আগে, সিএইচএস কেন শুরু হয় 0,0,1
এবং হয় না 0,0,0
?
উত্তর:
দুর্ভাগ্যক্রমে, ঠিক এই সময়ে সিএইচএস সম্বোধন প্রকল্পটি কার্যকর হয়েছিল, কার্যকর হয়েছিল এবং ব্যবহৃত হয়েছিল। ডিস্ক অ্যাক্সেসের জন্য ব্যবহৃত বিআইওএস বিঘ্নগুলিতে আইবিএম-সামঞ্জস্যপূর্ণ কম্পিউটারগুলির অফিশিয়াল কনভেনশন হিসাবে এটি গৃহীত হয়েছিল, ব্যাখ্যা করে যে কেন এই কনভেনশনটি আজও ব্যবহৃত হচ্ছে। থেকে ECMA-107 স্ট্যান্ডার্ড , ভলিউম এবং এ্যামেরিকান ডিস্ক কার্তুজের ফাইলের গঠন (এই এছাড়াও মূল উল্লেখ করা হয় ATA -1 স্পেসিফিকেশন ):
.1.১.৩ লজিক্যাল সেক্টর নম্বর
একটি ভলিউমের প্রতিটি সেক্টর একটি লজিকাল সেক্টর নম্বর দ্বারা চিহ্নিত করা হবে। [...] লজিকাল সেক্টর নম্বরগুলি সেক্টর 1 থেকে শুরু করে 0 থেকে শুরু করে, 00 থেকে সাইড 0 , ট্র্যাক 00, সাইড 1 অবধি চলমান থাকবে (যদি এফডিসি উভয় পক্ষের রেকর্ডযোগ্য হয়) এবং তারপরে আরোহণের ক্রমানুসারে নির্ধারিত হবে 01, পার্শ্ব 0, ইত্যাদি ট্র্যাক করতে
এই সমস্যাটি কয়েকটি হার্ড ডিস্কের স্পেসিফিকেশনগুলিতে সম্বোধন করা হয় , যেখানে উল্লেখ করা হয়েছে যে প্রদত্ত লজিক্যাল সিএইচএস ঠিকানাটি শারীরিক সিএইচএস ঠিকানার অবস্থানের চেয়ে পৃথক । এটি আরও সীগেট এটিএ ইন্টারফেস রেফারেন্স ম্যানুয়ালে আলোচনা করা হয়েছে , যা এই আকর্ষণীয় বিবরণ রয়েছে:
5.1 লজিকাল ব্লক ঠিকানা
[...] ড্রাইভের সেক্টরগুলিকে সিলিন্ডার 0 / হেড 0 / সেক্টর 1-এর এলবিএ 0 সহ, লাইনযুক্ত ম্যাপ করা হবে বলে ধারণা করা হচ্ছে।
[...] সমস্ত অনুবাদ মোডের জন্য, সি = 0, এইচ = 0, এস = 1 এলবিএ = 0 এর সমান। সমস্ত অনুবাদ মোডে সমস্ত লজিকাল ব্লক ঠিকানার জন্য সমতুল্য সিএইচএস গণনা করা সম্ভব নয় কারণ এই সূত্রটি কেবল এক দিকে কাজ করে। কারণ সিএইচএসে 0 নম্বর সেক্টর নেই বলে সিএইচএস ঠিকানাগুলি লজিক্যাল ব্লক অ্যাড্রেসিং অ্যাক্সেস করতে পারে এমন সম্ভাব্য সমস্ত ক্ষেত্রে 1/256 তম অ্যাক্সেস করতে পারে না।
লজিক্যাল সিএইচএস ঠিকানার জন্য, যদিও প্রথম সিলিন্ডার / প্রধান সূচকগুলি 0-ভিত্তিক অফসেট থেকে শুরু হয় এবং প্রথম সেক্টর সূচক 1 থেকে শুরু হয় (উদাহরণস্বরূপ নূন্যতম সম্ভাব্য সিএইচএস ঠিকানা 0/0/1 হয়), এটি সম্পর্কে কোনও পরিবর্তন হয় না শারীরিক এই খাতের অবস্থান। সিএইচএস 0/0/1 দখল করে এটিকে ডিস্কের প্রথম ভৌত ক্ষেত্র হিসাবে "সেক্টর 1" বলা হচ্ছে বলে মনে করুন। প্রকৃতপক্ষে, বেশিরভাগ প্রোগ্রামিং ভাষায় "প্রথম" উপাদানটি 0-ভিত্তিক, তাই সিএইচএস ঠিকানার 0/0/1 এ সেক্টরের লজিকাল ঠিকানাটি শূন্য ( 0x00
)।
এটি যৌক্তিকভাবে অনেক বেশি অর্থবোধ করে (যথা, "জিরোথ" লজিকাল ঠিকানাটি প্রথম শারীরিক ক্ষেত্র হিসাবে পরিচিত), কারণ আমরা ডিস্ক ডিভাইসটিকে অন্য যেকোন মেমরি ডিভাইস হিসাবে সম্বোধন করতে পারি (যেহেতু প্রতিটি সেক্টরের এটি একটি শারীরিক মানচিত্রের স্বতন্ত্র রৈখিক ঠিকানা রয়েছে সেক্টর), সুতরাং এলবিএ শূন্য থেকে শুরু করার জন্য কেন এটি বোধগম্য। প্রকৃতপক্ষে, আমরা যদি সিএইচএস ঠিকানা 0/0/1 কে একটি এলবিএতে অনুবাদ করি তবে ফলিত এলবিএ হবে 0x00000000
(এ কারণেই 1 টি সেক্টর সূচী থেকে বেশিরভাগ সিএইচএসে এলবিএ গণনাতে বিয়োগ করা হয়, এবং কেন এলবিএর সূচকে 1 যুক্ত করা হয়? সিএইচএস গণনা)।
zero sector
ত্রুটি কোডগুলি, এবং খারাপ ব্লক ইত্যাদি ব্যবহার করে .... সিএইচএসে স্থানান্তরিত এবং "ফিক্সড-ব্লক-আর্কিটেকচার" আপনারও ছিল ড্রাইভে একটি নিয়ামক (ফার্মওয়্যার) যুক্ত করার রূপান্তর এবং "লজিকাল" ডিস্ক সংঘের সূচনা ... নিয়ামক এখন অদৃশ্য তবে আপনি ধরে নিতে পারেন এটি একইভাবে ব্যবহৃত হয় ... শব্দটিকে এখন "হোস্ট প্রোটেক্টেড" বলা হয় অঞ্চল " en.wikedia.org/wiki/Fixed- block_architecture এবং en.wikedia.org/wiki/Host_protected_area
1
, তখনও আমি এখনও কোনও তথ্য পাইনি কেন (যদিও আমি সন্দেহ করি যে এটির 0
একটি ত্রুটি পতাকা হিসাবে সংরক্ষণে সেক্টরটির কিছু সম্পর্ক থাকতে পারে )। আমি কোনও কিছু সামনে এলে আপনাকে আপডেট করার বিষয়ে নিশ্চিত হয়ে থাকব।
আমি ইতিহাস ট্রেস করার চেষ্টা করে থাকেন CHS এবং সেক্টর সংখ্যায়ন ভরাডুবি, যা ডিস্ক ড্রাইভার লেখকদের জন্য অনেক জটিলতা সৃষ্ট এবং দ্রুত বৃদ্ধি দিয়েছেন করেছে "1 দিয়ে শুরু হওয়া" দ্বারা LBA ।
সিএইচএস সেই দিনগুলিতে ফিরে আসে যখন ব্যক্তিগত কম্পিউটারগুলি ডিসকেটে চালিত হয় এবং যখন বিআইওএস আবিষ্কার হয়েছিল। উইকিপিডিয়া এটাই বলে:
বিআইওএস (বেসিক ইনপুট / আউটপুট সিস্টেম) শব্দটি গ্যারি কিল্ডাল আবিষ্কার করেছিলেন এবং প্রথমবারের মতো সিপি / এম অপারেটিং সিস্টেমে আবির্ভূত হন, বুট সময় চালিত সিপি / এম এর মেশিন-নির্দিষ্ট অংশটি বর্ণনা করে যা হার্ডওয়্যারের সাথে সরাসরি ইন্টারফেস করে।
সিপি / এম বিআইওএস-এর একটি গবেষণায় সিপি / এম তথ্য সংরক্ষণাগার নথিটি পাওয়া গেছে : বিডিওএস সিস্টেম কল , যেখানে সেক্টরের সংখ্যা শূন্য দিয়ে শুরু হয়। উপসংহারটি হ'ল: প্রাথমিকতম সিএইচএস স্কিমা প্রকৃতপক্ষে শূন্য-ভিত্তিক খাত ঠিকানা ব্যবহার করেছিল ।
এক-ভিত্তিক খাত ঠিকানা প্রথম প্রথম আইবিপি / পিসির সাথে চালু হয়েছিল। ডকুমেন্ট INT 13 - ডিসকেট BIOS পরিষেবাদি বিশেষভাবে বলেছেন:
Most disk BIOS calls use the following parameter scheme:
AH = function request number
AL = number of sectors (1-128 dec.)
CH = cylinder number (0-1023 dec.)
CL = sector number (1-17 dec.) <--------!!!
DH = head number (0-15 dec.)
DL = drive number (0=A:, 1=2nd floppy, 80h=drive 0, 81h=drive 1)
DL = drive number (0=A:, 1=2nd floppy, 80h=C:, 81h=D:)
Note that some programming references use (0-3) as the
drive number which represents diskettes only.
ES:BX = address of user buffer
সুতরাং এটি আইবিএম / পিসিই ছিল যে বিআইওএসের একটি ডি-ফ্যাক্টো বাস্তবায়নের মাধ্যমে সেক্টর-নম্বরকে শূন্য-ভিত্তিক থেকে এক-ভিত্তিতে রূপান্তরিত করেছে।
আইবিএম পার্সোনাল কম্পিউটার (মডেল ৫১৫০) তৈরির জন্য নিয়োগ করা বারোটি আইবিএম ইঞ্জিনিয়ারের মধ্যে, ডেভিড জে ব্র্যাডলি তার বিআইওএসের জন্য কোডটি তৈরি করেছিলেন। সুতরাং তিনি হলেন তিনি, অন্য সমস্ত বিবরণের মধ্যেও ডিস্ক বিঘ্নিত করার পরামিতিগুলির বিষয়ে সিদ্ধান্ত নিয়েছিলেন। আমরা বিখ্যাত মেল Hallerman একসাথে এই লোক পাওনা CTRL+ + ALT+ + DEL।
সুতরাং সিএইচএসে সেক্টর গণনাটি 1 থেকে 0 কেন নয় কেন এই প্রশ্নের
উত্তর হ'ল: কারণ ডেভিড জে ব্র্যাডলি বিআইওএসকে
সেভাবে প্রোগ্রাম করেছিলেন ।
তিনি কেন এই উপায়ে এটি করেছিলেন, এটি তার নিজের দ্বারা সর্বোত্তম জবাব। যদি আমার অনুমান করতে হয় তবে আমি বলব যে তিনি একটি সেক্টর শূন্যকে অ্যাড্রেসিং সেক্টর হিসাবে রেখে গেছেন যার মাধ্যমে ড্রাইভার যাচাই করতে পারে যে মাথাটি সঠিক পথে রয়েছে।
যেহেতু ডিস্কগুলি প্রকৃত ছিল যাতে এই জাতীয় ব্যবস্থার প্রয়োজন না হয়, এবং ইঞ্জিনিয়াররা বিআইওএসের কারণে একটি সেক্টর নষ্ট করতে প্রস্তুত ছিল না, সেক্টর শূন্য কখনই অস্তিত্ব লাভ করতে পারেনি। এরপরে, ড্রাইভার-লেখকদের সমস্ত বিআইওএস ডিস্ক কলের জন্য এক-বিয়োগ করতে হবে এবং সেক্টরের ঠিকানার সাথে একটি যুক্ত করতে হবে।
ফ্লপি ডিস্কগুলির প্রথম স্পেসিফিকেশন আইবিএম দ্বারা আইবিএম 3740 উপস্থিতির সাথে তৈরি করা হয়েছিল এবং সিস্টেমের জন্য সংরক্ষিত সেক্টর রয়েছে তা উল্লেখ করে না। সিস্টেমের একমাত্র রিজার্ভেশন হল ট্র্যাক 00, যা কেবলমাত্র "ডেটা সেট লেবেল" সঞ্চয় করে যা 01 থেকে 76 টি ট্র্যাকগুলিতে সঞ্চিত তথ্যের ধরণ সনাক্ত করে It এটি পরিষ্কারভাবে সংজ্ঞায়িত করে যে প্রথম সেক্টরটি সেক্টর ১। এটি কোন কাকতালীয় ঘটনা নয় তবে একটি কম্পিউটারের সংখ্যার বিপরীতে প্রাকৃতিক সংখ্যার বিষয়।
আমরা লক্ষ করতে পারি যে যখন মানুষ কোনও কিছু গণনা করতে শুরু করে, তখন এটি শূন্যের সাথে শুরু হয় না তবে একটি দিয়ে শুরু হয়। উদাহরণস্বরূপ, কল্পনা করুন যে একটি শ্রেণিকক্ষে 135 জন ছাত্র রয়েছে। সংখ্যা গণনা এমন কিছু হবে: এক, দুই, তিন ... একশ তিরিশ, একশ পঁয়ত্রিশ।
এর সাংখ্যিক উপস্থাপনাটি এইভাবে হবে: 1, 2, 3, ... 134, 135 এতক্ষণে আমরা একমত হই, তাই না?
এখন আসুন অঙ্কগুলি 0 রাখুন যা 0. হিসাবে চিহ্নিত করা হয় না It এটি এর মতো দেখায়: 001, 002, 003, ..., 015, 016, ..., 099, 100, ..., 133, 134, 135
সিএইচএসের সাথে এটি ঘটে : 0,0,1 - 0,0,2 - 0,0,3 ...
এটি উল্লেখযোগ্য যে এক্সেল শিটের সারণি বা একটি ডাটাবেসে স্বয়ংক্রিয়-সংখ্যা ক্ষেত্রগুলি 0 দ্বারা শুরু হয় না 1 দিয়ে শুরু হয় এবং কেউ এ সম্পর্কে কিছুই বলেনি।
ডেভিড জে। ব্র্যাডলি কি বিআইওএসকে সেভাবে শিডিউল করেছিলেন?
হ্যাঁ, তবে তিনি বাইরে ছিলেন না।
অবশ্যই সেক্টর 0 ব্যবহার করা যাবে না এমন কোনও প্রযুক্তিগত কারণ নেই কারণ এটি অন্য কারণে ব্যবহারকারীদের থেকে সংরক্ষিত এবং গোপন না করা হয়। নীতিগতভাবে এটিতে নির্দেশিত প্রতিটি বিষয় প্রাকৃতিক সংখ্যার বিষয়।
GA21-9152-2 ফাইল নং 3740-00,15
আইবিএম 3740 ডেটা এন্ট্রি সিস্টেম
পৃষ্ঠা পৃষ্ঠা 12
ডিস্ক ইনটিশিয়ালেশন
... প্রতিটি ডিস্কে কোনও অনিয়মিত ট্র্যাক প্রতিস্থাপনের জন্য দুটি অতিরিক্ত ট্র্যাক থাকে। তদতিরিক্ত, ইনিশিয়ালাইজেশন বৈশিষ্ট্যটি ডিস্কেতে সেক্টর ঠিকানার ক্রম পরিবর্তন করার একটি উপায় সরবরাহ করে। সাধারণত, সেক্টরগুলির ক্রম সংখ্যাতে থাকে (1, 2, 3, ... 25,26) ।
পৃষ্ঠা 24 ডিসকাউন্টে
ডেটা লেবেলিং
আরম্ভের সময়, কোনও ডেটা সেটের জন্য ডেটা সেট লেবেল চৌম্বকীয়ভাবে ডিস্কেটের সূচক ট্র্যাক (ট্র্যাক 00) এ রেকর্ড করা হয়। এই লেবেলের প্রাথমিক উদ্দেশ্যটি হ'ল ডিস্কেটে থাকা ডেটার অবস্থান নির্ধারণ করা
এটি 1973 সালে ছিল It এটি একটি 8 "ডিসকেটের উপর ডেটা রেকর্ড করেছে। আইবিএম পিসি 5150 আগস্ট 12, 1981 এ জন্ম হয়েছিল ... এবং আমরা ভুলতে পারি না যে তাদের আগের ডিভাইসের সাথে কিছুটা সামঞ্জস্যতা বজায় রাখতে হয়েছিল had
অবশ্যই কোন প্রযুক্তিগত কারণ ছিল।