Операционни Системи

Памет и Адресно пространство

Основни концепции за паметта

Паметта е един от най-важните ресурси в компютърните системи. Тя се използва за съхранение на данни и инструкции, които процесорът извършва. В съвременните компютри паметта се дели на физическа памет (RAM) и виртуална памет. Физическата памет е бърза, но ограничена по капацитет, докато виртуалната памет позволява на системите да използват повече памет, отколкото е физически налично.

Важно

Адресното пространство представлява съвкупността от всички абстрактни, логически числа или етикети, които централният процесор или програмата използват за адресиране на паметта, докато пространството на паметта е самото физическо хардуерно хранилище (като RAM памет или кеш чипове), където се съхраняват данните.

Основни концепции за паметта

Паметта е един от най-важните ресурси в компютърните системи. Тя се използва за съхранение на данни и инструкции, които процесорът извършва. В съвременните компютри паметта се дели на физическа памет (RAM) и виртуална памет. Физическата памет е бърза, но ограничена по капацитет, докато виртуалната памет позволява на системите да използват повече памет, отколкото е физически налично.

Видове памет

  1. RAM (Random Access Memory):

    • Бърза памет, която се използва за временно съхранение на данни и програми, докато компютърът работи.
    • Изтрива се при изключване на системата.
  2. ROM (Read-Only Memory):

    • Памет, която съдържа данни, които не могат да бъдат променени. Използва се за съхранение на firmware (например BIOS).
  3. Кеш памет (Cache Memory):

    • Много бърза памет, която се използва за временно съхранение на често използвани данни, за да се ускори достъпът до тях.
  4. Виртуална памет:

    • Механизъм, който позволява на операционната система да използва част от твърдия диск като "разширение" на RAM. Това се осъществява чрез странична организация (paging) или сегментация.

Адресно пространство – какво е и защо е важно?

Адресното пространство е виртуална карта на паметта, която всеки процес използва, за да достъпи своите данни и инструкции. То позволява на процесите да работят изолирано един от друг, което предотвратява конфликти и подобрява сигурността.

  • Виртуално адресно пространство: Всеки процес има собствено виртуално адресно пространство, което е по-голямо от физическата памет. Това позволява на процесите да използват повече памет, отколкото е налично физически.

  • Физическо адресно пространство: Това е реалната памет (RAM), която е ограничена по размер.

Управление на паметта в десктоп и мобилни ОС

Десктоп ОС (Windows, Linux, macOS)

  • Виртуална памет: Десктоп операционните системи използват виртуална памет, за да разширят капацитета на RAM. Това се осъществява чрез странична организация (paging), където данните се прехвърлят между RAM и твърдия диск.
  • Странична организация (Paging): Паметта се дели на фиксирани блокове (страници), които се зареждат в RAM при нужда.
  • Сегментация: Паметта се дели на логически сегменти (например код, данни, stack), които могат да бъдат заредени в паметта поотделно.
  • Изолация: Всеки процес работи в собствено адресно пространство, което предпазва другите процеси от грешки или злонамерени действия.

Мобилни ОС (Android, iOS)

  • Оптимизация за ограничени ресурси: Мобилните ОС са оптимизирани за работа с ограничени памет и енергия. Те използват по-прости модели за управление на паметта, за да спестят енергия и да подобрят производителността.
  • ART (Android Runtime): Android използва ART, който оптимизира паметта за всяко приложение, за да работи по-ефективно.
  • Странична организация: Подобно на десктоп системите, мобилните ОС използват странична организация, но с по-малки страници, за да се оптимизира използването на паметта.

Предимства на виртуалната памет и адресните пространства

  1. Изолация: Всеки процес работи в собствено адресно пространство, което предпазва другите процеси от грешки или злонамерени действия.
  2. Ефективно използване на паметта: Виртуалната памет позволява на системите да използват повече памет, отколкото е физически налично.
  3. Гъвкавост: Процесите могат да използват повече памет, отколкото е налично в RAM, като се зареждат данни от твърдия диск при нужда.