home.social

#виртуальная_память — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #виртуальная_память, aggregated by home.social.

  1. Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа

    Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать

    habr.com/ru/companies/ruvds/ar

    #память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи

  2. Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа

    Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать

    habr.com/ru/companies/ruvds/ar

    #память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи

  3. Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа

    Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать

    habr.com/ru/companies/ruvds/ar

    #память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи

  4. Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа

    Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать

    habr.com/ru/companies/ruvds/ar

    #память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи

  5. Как работает компьютер. Простая статья для начинающих программистов

    В этой статье изложено всё, что нужно знать об устройстве компьютера с точки зрения программиста, а именно: для чего нужен тактовый генератор, регистры, кэши и виртуальная память; что такое архитектура процессора; что такое машинный код и код ассемблера; чем отличается компиляция в машинный код в C, C++ или Rust от компиляции в байт-код виртуальной машины в языках типа Java и C#; в чём их отличие от интерпретируемых языков вроде JavaScript или Python; что такое динамические и статические библиотеки (.dll/.so, .lib/.a); что такое фреймворк; что такое API и web-API; и что собой представляет параллельное программирование с использованием многоядерных процессоров, векторных регистров и видеокарт.

    habr.com/ru/articles/964572/

    #процессор #кэш #регистр #виртуальная_память #компиляция #интерпретаторы #параллелизм #gpu #векторные_операции #api

  6. Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

    Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

    habr.com/ru/companies/timeweb/

    #linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи

  7. Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

    Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

    habr.com/ru/companies/timeweb/

    #linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи

  8. Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

    Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

    habr.com/ru/companies/timeweb/

    #linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи

  9. Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

    Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

    habr.com/ru/companies/timeweb/

    #linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи

  10. Ассемблер: Рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС

    Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.

    habr.com/ru/companies/timeweb/

    #linux #системный_вызов #ассемблер #линковка #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое

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

    У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?

    habr.com/ru/articles/914016/

    #виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы

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

    У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?

    habr.com/ru/articles/914016/

    #виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы

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

    У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?

    habr.com/ru/articles/914016/

    #виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы

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

    У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?

    habr.com/ru/articles/914016/

    #виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы

  15. Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб

    Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.

    habr.com/ru/articles/830662/

    #xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика

  16. Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб

    Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.

    habr.com/ru/articles/830662/

    #xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика

  17. Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб

    Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.

    habr.com/ru/articles/830662/

    #xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика

  18. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 4: Прерывания и системные вызовы

    Глава расскажет, как xv6 обрабатывает прерывания на RISC-V и о хитростях виртуальной памяти: как использовать ошибки доступа к страницам, чтобы оптимизировать работу ОС. Глава расскажет о копировании страниц при записи, ленивой выдаче страниц, выдаче страниц по необходимости и сбросе страниц на диск.

    habr.com/ru/articles/794326/

    #xv6 #операционная_система #прерывания #исключения #системные_вызовы #ядро #таблицы_страниц #виртуальная_память #copyonwrite #riscv

  19. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 4: Прерывания и системные вызовы

    Глава расскажет, как xv6 обрабатывает прерывания на RISC-V и о хитростях виртуальной памяти: как использовать ошибки доступа к страницам, чтобы оптимизировать работу ОС. Глава расскажет о копировании страниц при записи, ленивой выдаче страниц, выдаче страниц по необходимости и сбросе страниц на диск.

    habr.com/ru/articles/794326/

    #xv6 #операционная_система #прерывания #исключения #системные_вызовы #ядро #таблицы_страниц #виртуальная_память #copyonwrite #riscv

  20. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 3. Таблицы страниц

    ОС управляет виртуальной памятью с помощью таблиц страниц. Виртуальная память процесса - адресное пространство, защищенное от других процессов. ОС делит память на страницы одинакового размера и отображает страницы виртуальной памяти на страницы физической памяти. Так ОС предоставит процессу непрерывное адресное пространство, даже если страницы физической памяти расположены в другом порядке. Таблица страниц хранит для виртуальной страницы номер соответствующей физической страницы. Каждый процесс владеет личной таблицей страниц. Глава рассказывает, как xv6 работает с виртуальной памятью и об устройстве виртуальной памяти RISC-V.

    habr.com/ru/articles/792808/

    #виртуальная_память #таблицы_страниц #riscv #xv6 #операционная_система #unix #ядро

  21. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 3. Таблицы страниц

    ОС управляет виртуальной памятью с помощью таблиц страниц. Виртуальная память процесса - адресное пространство, защищенное от других процессов. ОС делит память на страницы одинакового размера и отображает страницы виртуальной памяти на страницы физической памяти. Так ОС предоставит процессу непрерывное адресное пространство, даже если страницы физической памяти расположены в другом порядке. Таблица страниц хранит для виртуальной страницы номер соответствующей физической страницы. Каждый процесс владеет личной таблицей страниц. Глава рассказывает, как xv6 работает с виртуальной памятью и об устройстве виртуальной памяти RISC-V.

    habr.com/ru/articles/792808/

    #виртуальная_память #таблицы_страниц #riscv #xv6 #операционная_система #unix #ядро

  22. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 2. Устройство операционной системы

    Операционная система выполняет несколько процессов одновременно. ОС распределяет время работы с ресурсами компьютера между процессами. ОС даст каждому процессу шанс на выполнение, даже если число процессов больше числа процессоров. ОС изолирует процессы друг от друга так, что ошибка в одном процессе не нарушит работу других. ОС позволяет процессам взаимодействовать - обмениваться данными и работать совместно. Глава 2 рассказывает, как xv6 выполняет эти требования, о процессах xv6 и как xv6 запускает первый процесс.

    habr.com/ru/articles/791058/

    #xv6 #riscv #операционная_система #процесс #ядро #виртуальная_память #безопасность #монолитное_ядро #микроядро #системные_вызовы

  23. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 2. Устройство операционной системы

    Операционная система выполняет несколько процессов одновременно. ОС распределяет время работы с ресурсами компьютера между процессами. ОС даст каждому процессу шанс на выполнение, даже если число процессов больше числа процессоров. ОС изолирует процессы друг от друга так, что ошибка в одном процессе не нарушит работу других. ОС позволяет процессам взаимодействовать - обмениваться данными и работать совместно. Глава 2 рассказывает, как xv6 выполняет эти требования, о процессах xv6 и как xv6 запускает первый процесс.

    habr.com/ru/articles/791058/

    #xv6 #riscv #операционная_система #процесс #ядро #виртуальная_память #безопасность #монолитное_ядро #микроядро #системные_вызовы