xavfsiz o'zaro ta'sir, tizim tomonidan taqdim etilgan "ob'ektlar" o'zaro ta'siri orqali ma'lumotlar almashinuvi; shu bilan birga, ma'lumotlarning yaxlitligi va u bilan operatsiyalarning bo'linmasligi (ya'ni, vazifalarni istalmagan almashtirishning yo'qligi) tizim tomonidan bilvosita ta'minlanadi; o'zaro ta'sirning bunday "ob'ektlari" misollari - semaforlar, signallar va pochta qutilari;
tizimli oʻzaro taʼsir obʼyektlaridan mustaqil boʻlgan umumiy resurslar (masalan, umumiy oʻzgaruvchilar) orqali maʼlumotlar almashinuvi amalga oshirilganda xavfli shovqin ; shu bilan birga, ma'lumotlarning yaxlitligi va bo'linmasligi ilovaning o'zi tomonidan aniq ta'minlanadi (ko'p hollarda, sinxronizatsiya va o'zaro ta'sirning u yoki bu tizim ob'ekti orqali).
Har qanday turdagi o'zaro ta'sir tizim sinxronizatsiya ob'ektlarini talab qilganligi sababli, barcha mavjud RTOS ilovalarni bunday ob'ektlar to'plami bilan ta'minlaydi. Quyida biz ulardan eng keng tarqalganini ko'rib chiqamiz.
Umumiy xotira
Ta'rif. Umumiy xotira - bu bir nechta jarayonlar orqali kirish mumkin bo'lgan xotira maydoni. Umumiy xotira aloqasi asosiy jarayon aloqa mexanizmi bo'lib, barcha boshqalar kamayadi. Bir tomondan, bu o'zaro ta'sirning eng tezkor turi, chunki jarayonlar to'g'ridan-to'g'ri (ya'ni RTOS ishtirokisiz) ma'lumotlarni bir-biriga uzatadi. Boshqa tomondan, u xavfsiz emas va ma'lumotlarning to'g'ri uzatilishini ta'minlash uchun ma'lum sinxronizatsiya ob'ektlaridan foydalaniladi.
Virtual xotiraga ega tizimlarda umumiy xotirani mantiqiy tashkil qilishning ikkita yondashuvi mavjud.
Umumiy xotira operatsion tizimning manzil maydonida joylashgan bo'lib, jarayonlarning virtual manzil maydonlari unga moslashtiriladi. Operatsion tizimning amalga oshirilishiga qarab, bu umumiy xotira bilan ishlashda (chunki u jarayonga emas, RTOSga tegishli) va umumiy xotirani jismoniy xotiraga o'rnatishda (chunki RTOSning o'zi peyjingda ishtirok etmasligi uchun) vazifalarni almashtirishga olib kelishi mumkin. ).
Birgalikda xotira mantiqiy ravishda xotira xaritasidagi fayl sifatida ifodalanadi (ya'ni, xotiradagi baytlar massivi sifatida ko'riladigan fayl). Bunday holda, umumiy xotira to'liq foydalanuvchi manzil maydonida joylashgan va unga kirishda qo'shimcha kechikishlar bo'lmaydi.
umumiy xotira bilan ishlashning ikkinchi usulidan foydalanish tavsiya etiladi .
Virtual xotiraga ega tizimlarda umumiy xotirada quyidagi elementar operatsiyalar aniqlanadi.
yaratish (yoki ochish), umumiy xotira jarayonda ob'ekt sifatida paydo bo'ladi, lekin uning tarkibiga kirish hali imkoni yo'q;
umumiy xotirani jarayonning manzil maydoniga ulang, bu holda umumiy xotira jarayonning virtual manzil maydoniga moslashtiriladi; ushbu operatsiyadan so'ng umumiy xotira foydalanish uchun mavjud;
umumiy xotirani jarayonning manzil maydonidan ajratib oling, bu operatsiyadan so'ng umumiy xotira tarkibiga kirish imkonsiz bo'ladi;
u bilan oxirgi jarayon amalga oshirilganda haqiqiy umumiy xotira o'chiriladi .
Virtual xotirasiz tizimlarda bu operatsiyalar ahamiyatsiz.
E'tibor bering, umumiy xotira turli jarayonlarda turli virtual xotira manzillari bilan taqqoslanishi mumkin. Shuning uchun, umumiy xotira umumiy xotiraning boshqa elementlariga ko'rsatgichlarni saqlay olmaydi (masalan, bitta yo'naltirilgan ro'yxatning klassik amalga oshirilishi umumiy xotirada o'zgarmagan holda saqlanishi mumkin emas).
semaforlar
Do'stlaringiz bilan baham: |