Foundationপ্রথম নীতি থেকে
LEVEL 4 · Operating Systems

Privilege Ring

প্রিভিলেজ রিং

CPU-র ভেতরে দুই bit যা বলে বর্তমান কোড কতটা বিশ্বাসযোগ্য। x86-এ ring 0–3, ARM-এ EL0–EL3। প্রতিটা instruction ও memory access-এ যাচাই হয়।

also: ring, CPL, exception level, protection ring

x86-এ বর্তমান level থাকে CPL (Current Privilege Level) নামে — cs register-এর নিচের দুই bit।

চারটা ring সংজ্ঞায়িত, কিন্তু বাস্তবে মাত্র দুটো ব্যবহৃত (ring 0 আর 3), দুই কারণে:

  1. অন্য architecture-এ (ARM, RISC-V) চারটা level নেই — portable OS-কে সর্বনিম্ন সাধারণ হর নিতে হয়
  2. Page table entry-তে privilege-এর জন্য মাত্র একটা bit আছে (U/S) — তাই page-স্তরে ring 1 আর 2 আলাদা করাই যায় না

ARM আরো পরিষ্কার:

Levelকে
EL0application
EL1OS kernel
EL2hypervisor
EL3secure monitor (TrustZone)

ARM-এ hypervisor-এর জন্য শুরু থেকেই আলাদা level; x86-কে সেটা পরে VT-x দিয়ে যোগ করতে হয়েছে।

কেন এটা hardware-এ থাকতেই হয়: software নিজেকে নিজে রক্ষা করতে পারে না। যে কোড CPU-তে চলছে সে CPU-র উপর সমান অধিকার রাখে — যদি না CPU নিজে পার্থক্য করে।