#виртуальная_память — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #виртуальная_память, aggregated by home.social.
-
Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа
Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать
https://habr.com/ru/companies/ruvds/articles/1033394/
#память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи
-
Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа
Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать
https://habr.com/ru/companies/ruvds/articles/1033394/
#память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи
-
Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа
Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать
https://habr.com/ru/companies/ruvds/articles/1033394/
#память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи
-
Иллюзия памяти: как индустрия десятилетиями маскировала ограничения железа
Сейчас память можно увеличить ползунком, Redis поднять одной командой, а состояние сервера оценить по строке в панели управления. Но за этим удобством стоит история компромиссов — сначала инженерам пришлось научить компьютеры работать так, будто памяти больше, чем есть на самом деле, потом диски собрали в массивы, горячие данные перенесли в Redis, а всю эту сложность спрятали за хостингом и managed-сервисами. Индустрия десятилетиями строила убедительные иллюзии поверх ограниченной физической реальности, но почему-то памяти до сих пор недостаточно. Как? Разобрал в статье. Читать
https://habr.com/ru/companies/ruvds/articles/1033394/
#память #виртуальная_память #RAID #Redis #latency #distributed_systems #HBM #CXL #кэширование #ruvds_статьи
-
Как работает компьютер. Простая статья для начинающих программистов
В этой статье изложено всё, что нужно знать об устройстве компьютера с точки зрения программиста, а именно: для чего нужен тактовый генератор, регистры, кэши и виртуальная память; что такое архитектура процессора; что такое машинный код и код ассемблера; чем отличается компиляция в машинный код в C, C++ или Rust от компиляции в байт-код виртуальной машины в языках типа Java и C#; в чём их отличие от интерпретируемых языков вроде JavaScript или Python; что такое динамические и статические библиотеки (.dll/.so, .lib/.a); что такое фреймворк; что такое API и web-API; и что собой представляет параллельное программирование с использованием многоядерных процессоров, векторных регистров и видеокарт.
https://habr.com/ru/articles/964572/
#процессор #кэш #регистр #виртуальная_память #компиляция #интерпретаторы #параллелизм #gpu #векторные_операции #api
-
Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС
Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.
https://habr.com/ru/companies/timeweb/articles/940310/
#linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи
-
Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС
Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.
https://habr.com/ru/companies/timeweb/articles/940310/
#linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи
-
Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС
Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.
https://habr.com/ru/companies/timeweb/articles/940310/
#linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи
-
Ассемблер: рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС
Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.
https://habr.com/ru/companies/timeweb/articles/940310/
#linux #системный_вызов #ассемблер #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое_программирование #timeweb_статьи
-
Ассемблер: Рассматриваем каждый байт «Hello, World!». Как на самом деле работают программы на уровне процессора и ОС
Что на самом деле происходит, когда вы запускаете программу? Мы привыкли воспринимать это как данность, но за кадром скрывается целая вселенная — от регистров процессора и системных вызовов Linux до формата ELF и модели памяти процесса. Присоединяйтесь к погружению, где мы прольём свет на каждый байт программы «Hello, World!» и поймём, каким образом ОС её выполняет.
https://habr.com/ru/companies/timeweb/articles/940296/
#linux #системный_вызов #ассемблер #линковка #виртуальная_память #компиляция #elf #библиотеки #си #низкоуровневое
-
Введение в память, мотивация виртуальной, отображение между физической и виртуальной
У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?
https://habr.com/ru/articles/914016/
#виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы
-
Введение в память, мотивация виртуальной, отображение между физической и виртуальной
У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?
https://habr.com/ru/articles/914016/
#виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы
-
Введение в память, мотивация виртуальной, отображение между физической и виртуальной
У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?
https://habr.com/ru/articles/914016/
#виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы
-
Введение в память, мотивация виртуальной, отображение между физической и виртуальной
У нас имеется физическая память, она одна для всех программ. И представьте, что вот вы разрабатываете программу, пишете алгоритмы, верстаете интерфейсы, свои контейнеры, это и так в силу несовершенства языков и сложности задач является довольно нетривиальной задачей, а теперь, задумайтесь: если вам нужно будет параллельно анализировать и запоминать, как вашей же памятью могли воспользоваться другие программы, или даже как ваше приложение пользуется ей. Как же оно получилось?
https://habr.com/ru/articles/914016/
#виртуальная_память #concurrency #C++ #регистры #rip #call_stack #heap #операционные_системы
-
Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб
Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.
https://habr.com/ru/articles/830662/
#xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика
-
Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб
Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.
https://habr.com/ru/articles/830662/
#xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика
-
Xv6: увеличим размер страниц виртуальной памяти с 4Кб до 2Мб
Научим xv6 работать с виртуальными страницами размера 2 Мб, узнаем, как компоновщик создает образ памяти программы и научим файловую систему xv6 справляться с большими файлами. Пример: Пусть программа занимает 4 Мб памяти. Размер страницы - 4 Кб. Программа займет (1024 * 1024 * 4) / (1024 * 4) = 1024 страницы памяти. ОС избавит процессор от лишней работы, если увеличит размер страницы до 2 Мб - тогда программа займет 2 страницы.
https://habr.com/ru/articles/830662/
#xv6 #riscv #виртуальная_память #таблицы_страниц #файловая_система #ld #объектный_файл #исполняемый_файл #компоновка #сценарий_компоновщика
-
[Перевод] Xv6: учебная Unix-подобная ОС. Глава 4: Прерывания и системные вызовы
Глава расскажет, как xv6 обрабатывает прерывания на RISC-V и о хитростях виртуальной памяти: как использовать ошибки доступа к страницам, чтобы оптимизировать работу ОС. Глава расскажет о копировании страниц при записи, ленивой выдаче страниц, выдаче страниц по необходимости и сбросе страниц на диск.
https://habr.com/ru/articles/794326/
#xv6 #операционная_система #прерывания #исключения #системные_вызовы #ядро #таблицы_страниц #виртуальная_память #copyonwrite #riscv
-
[Перевод] Xv6: учебная Unix-подобная ОС. Глава 4: Прерывания и системные вызовы
Глава расскажет, как xv6 обрабатывает прерывания на RISC-V и о хитростях виртуальной памяти: как использовать ошибки доступа к страницам, чтобы оптимизировать работу ОС. Глава расскажет о копировании страниц при записи, ленивой выдаче страниц, выдаче страниц по необходимости и сбросе страниц на диск.
https://habr.com/ru/articles/794326/
#xv6 #операционная_система #прерывания #исключения #системные_вызовы #ядро #таблицы_страниц #виртуальная_память #copyonwrite #riscv
-
[Перевод] Xv6: учебная Unix-подобная ОС. Глава 3. Таблицы страниц
ОС управляет виртуальной памятью с помощью таблиц страниц. Виртуальная память процесса - адресное пространство, защищенное от других процессов. ОС делит память на страницы одинакового размера и отображает страницы виртуальной памяти на страницы физической памяти. Так ОС предоставит процессу непрерывное адресное пространство, даже если страницы физической памяти расположены в другом порядке. Таблица страниц хранит для виртуальной страницы номер соответствующей физической страницы. Каждый процесс владеет личной таблицей страниц. Глава рассказывает, как xv6 работает с виртуальной памятью и об устройстве виртуальной памяти RISC-V.
https://habr.com/ru/articles/792808/
#виртуальная_память #таблицы_страниц #riscv #xv6 #операционная_система #unix #ядро
-
[Перевод] Xv6: учебная Unix-подобная ОС. Глава 3. Таблицы страниц
ОС управляет виртуальной памятью с помощью таблиц страниц. Виртуальная память процесса - адресное пространство, защищенное от других процессов. ОС делит память на страницы одинакового размера и отображает страницы виртуальной памяти на страницы физической памяти. Так ОС предоставит процессу непрерывное адресное пространство, даже если страницы физической памяти расположены в другом порядке. Таблица страниц хранит для виртуальной страницы номер соответствующей физической страницы. Каждый процесс владеет личной таблицей страниц. Глава рассказывает, как xv6 работает с виртуальной памятью и об устройстве виртуальной памяти RISC-V.
https://habr.com/ru/articles/792808/
#виртуальная_память #таблицы_страниц #riscv #xv6 #операционная_система #unix #ядро
-
[Перевод] Xv6: учебная Unix-подобная ОС. Глава 2. Устройство операционной системы
Операционная система выполняет несколько процессов одновременно. ОС распределяет время работы с ресурсами компьютера между процессами. ОС даст каждому процессу шанс на выполнение, даже если число процессов больше числа процессоров. ОС изолирует процессы друг от друга так, что ошибка в одном процессе не нарушит работу других. ОС позволяет процессам взаимодействовать - обмениваться данными и работать совместно. Глава 2 рассказывает, как xv6 выполняет эти требования, о процессах xv6 и как xv6 запускает первый процесс.
https://habr.com/ru/articles/791058/
#xv6 #riscv #операционная_система #процесс #ядро #виртуальная_память #безопасность #монолитное_ядро #микроядро #системные_вызовы
-
[Перевод] Xv6: учебная Unix-подобная ОС. Глава 2. Устройство операционной системы
Операционная система выполняет несколько процессов одновременно. ОС распределяет время работы с ресурсами компьютера между процессами. ОС даст каждому процессу шанс на выполнение, даже если число процессов больше числа процессоров. ОС изолирует процессы друг от друга так, что ошибка в одном процессе не нарушит работу других. ОС позволяет процессам взаимодействовать - обмениваться данными и работать совместно. Глава 2 рассказывает, как xv6 выполняет эти требования, о процессах xv6 и как xv6 запускает первый процесс.
https://habr.com/ru/articles/791058/
#xv6 #riscv #операционная_система #процесс #ядро #виртуальная_память #безопасность #монолитное_ядро #микроядро #системные_вызовы