АПС Л17. Виртуальная память. Операционные системы

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 พ.ย. 2024

ความคิดเห็น • 31

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    В вычислительной технике много примеров разнообразных кешев:
    Кэш базы данных, Кэш браузера, Кэш L1/l2/l3,Регистры процессора,Ram,Tlb, Косое дерево.
    Есть ли еще какие примеры кэше-образных технологий?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Регистры процессора не выполняют роль кэша, это архитектурная часть. А еще кэш, с ходу только кэш на винчестере в голову приходит

  • @aabdev
    @aabdev 3 ปีที่แล้ว +1

    Что такое ABI (application binary interface) (1:07:27) простыми словами?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Договоренность.
      Например, можно программе договориться с операционной системой, чтоб если в регистре x7 во время системного вызова будет лежать число 43241, то надо вывести в терминал строку, которая начинается по адресу, располагающемуся в регистре x1. Пример с головы, суть в том, что это просто договоренность о том, как на что надо реагировать

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Кто сохраняет регистры при прерывании (1:26:03)? Какой код?
    Какой код передает это управление обработчику прерываний (1:28:20) потом обратно процессу? Какой код это делает?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Код внутри обработчика прерывания. Начинается он с сохранения контекста, потом полезный код, потом восстановление контекста и передача управления

  • @tarmo9010
    @tarmo9010 ปีที่แล้ว

    кто подскажет, куда 4 бита пропадают, как получается адресовать 28 битами 32 битовой пространство. И как в risc-v без селекторных дескипторов регистров, разным программам в разных потоках с одинаковыми виртуальными адресами на разную физическую память указывать

    • @digital_machines
      @digital_machines  ปีที่แล้ว

      Одинаковыми виртуальными адресами - никак. Все регистры для управления виртуальной памятью находятся в CSR

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Как же делаются подкачки (swap) (14:25) на встраиваемых Linux компьютерах, где нет жесткого диска(роутеры, умные колонки)?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Там может использоваться MPU, это очень упрощенный MMU, в котором не делается swap, но есть приватность памяти

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Как можно измерить время, затраченное на переключение контекста?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Встроенным таймером. Таким, например, пользуется операционная система, для того, чтобы прервать работу пользовательской программы

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Можно ли теоретически построить Real time вычислительную систему, которая работает с виртуальной памятью?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Универсальную нет, а какую-то специализированную, при определенных условиях, думаю можно

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Как один процесс может передать данные другому процессу?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Операционная система должна по их запросу поставить им общие виртуальные страницы

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Как проверить что конкретный адрес принадлежит памяти процесса?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Только через операционную системы, запросив у нее, а просто заглянув в память этого не понять

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Ядро операционной системы тоже работает с виртуальными адресами?

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Где хранится таблица страниц виртуальной памяти?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Либо в основной памяти, либо в специальной

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Сохраняется ли контекст при системном вызове?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Обязательно! При том все регистры, в таком случае, являются сохраняемыми

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    Если виртуальная память призвана чтобы запретить одним программам читать память других программ (15:10)то как же тогда работает программа ArtMoney для установки бесконечных патронов в компьютерных играх?
    Как ArtMoney нарушает приватность адресного пространства?

    • @kotmurzilkin6380
      @kotmurzilkin6380 2 ปีที่แล้ว

      Так же как работает отладчик - запрашивает права у ОС на отладку приложение и делает с памятью все, что захочет.

  • @aabdev
    @aabdev 3 ปีที่แล้ว

    На какие части разбита память процесса?

    • @digital_machines
      @digital_machines  3 ปีที่แล้ว

      Смотря какая архитектура и какой уровень абстракции. Скорее всего вы говорите про эту четверку: text (для программ), стэк, куча и глобальные данные

  • @vsezanyato
    @vsezanyato 3 ปีที่แล้ว

    Атата!