Рубрика «память»

Что это и зачем это?

Memory pressure — это состояние, когда системе не хватает свободной памяти. Обычно его разделяют на moderate и critical. Moderate — это когда памяти "мало, но пока еще жить можно", и дальнейшие выделения памяти могут вызвать проблемы с отзывчивостью из-за активной работы со swap-файлов или сбросов системных буферов и кэшей. Critical — этап уже более серьезный, означающий "еще чуть-чуть, придет OOM-killer и начнет убивать процессы".

Читать полностью »

NVMe стирает разницу между памятью и накопителями - 1

История накопителей представляет собой гонку между носителями и вычислительными мощностями. На пути к компьютерной нирване встаёт узкое место – хранение миллиардов нулей и единиц. Самый новый из игроков на этом поприще – энергонезависимая память Non-Volatile Memory Express (NVMe), представляющая собой что-то вроде гибрида нескольких предыдущих технических решений.

В первом поколении домашних компьютеров в качестве накопителей использовались флоппи-диски и компакт-кассеты, но с ростом возможностей компьютеров постепенно росла и важность накопителей. К 1990-м большое распространение получили жёсткие диски, позволявшие хранить сначала мегабайты, а потом и гигабайты информации. В результате выросла необходимость в быстрой системе связи между накопителем и остальной системой. В то время чаще всего использовался интерфейс ATA (IDE) в режиме программного ввода-вывода Programmed Input-Output (PIO).
Читать полностью »

Когда я писал в начале года статью “Кто есть кто в мировой микроэлектронике”, меня удивило, что в десятке самых больших полупроводниковых компаний пять занимаются производством памяти, в том числе две – только производством памяти. Общий объем мирового рынка полупроводниковой памяти оценивается в 110 миллиардов долларов и является постоянной головной болью участников и инвесторов, потому что, несмотря на долгосрочный рост вместе со всей индустрией микроэлектроники, локально рынок памяти очень сильно лихорадит – 130 миллиардов в 2017 году, 163 в 2018, 110 в 2019 и 110 же ожидается по итогам 2020 года. 

Читать полностью »
Как работает память в Python - 1

Что такое память и зачем она нужна?

Читать полностью »

Как воспоминания переживают ампутацию, метаморфозы, и передаются через инъекции - 1
Если безголовый червь может заново отрастить память, тогда где же она хранится? А если память может восстанавливаться, можно ли её перенести?

Изучение памяти всегда было странной темой, стоявшей в науке особняком. В 1950-е годы никому не известный профессор психологии Джеймс Макконнел из Мичиганского университета попал в заголовки газет (став в итоге чем-то вроде знаменитости), проведя серию экспериментов над планариями – пресноводными плоскими червями. Они восхищали Макконнела не только потому, что обладали, по его словам «нервной системой истинно синаптического типа». Также они «имели невероятные способности к регенерации. При лучшем раскладе можно разрезать червя на множество частей, до 50 штук», и каждая из них восстановится в «нетронутый и полностью функционирующий организм».
Читать полностью »

Как на на маленькой карте памяти microSD размером буквально с ноготок помещается 1 терабайт данных? Такой вопрос нам задали в комментариях к видео про шифрование данных. Звучит интересно! Сегодня мы узнаем что находится внутри SD-карты и SSD-диска. Что объединяет современные чипы памяти со слоёным пирогом? И какой емкости будут наши диски и карты памяти через несколько лет?

Олды, кто помнит 2004 год? Тогда в продаже впервые появилась SD-карточка с рекордной на тот момент ёмкостью 1 гигабайт. Это было событием и карточку оценили в солидную сумму — 500 долларов США.

Как на microSD помещается 1 ТБ? — Разбор - 1

А спустя 15 лет представили карты памяти microSD объёмом 1 терабайт.

Как на microSD помещается 1 ТБ? — Разбор - 2

Но как за 15 лет мы научились размещать в тысячу раз больше информации на вдвое меньшем пространстве?
Читать полностью »

Бумажный бит: создание механической памяти из оригами - 1

«Бегущий по лезвию», «Воздушная тюрьма», «Heavy Rain» — что общего между этими представителями массовой культуры? Во всех в той или иной степени присутствует древнее японское искусство по складыванию бумаги — оригами. В кино, играх и в реальной жизни оригами частенько используется в качестве символа определенных чувств, каких-то воспоминаний или своеобразного послания. Это скорее эмоциональная составляющая оригами, но с точки зрения науки в бумажных фигурках сокрыто множество интересных аспектов из самых разных направлений: геометрия, математика и даже механика. Сегодня мы с вами познакомимся с исследованием, в котором ученые из Американского института физики создали устройство хранения данных за счет складывания/раскладывания фигурок оригами. Как именно работает бумажная карта памяти, какие принципы в ней реализованы и сколько данных может хранить такое устройство? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.Читать полностью »

Мы публикуем конспект вступительной лекции видеокурса «Бэкенд-разработка на Python». В ней Егор Овчаренко egorovcharenko, тимлид в Яндекс.Такси, рассказал о внутреннем устройстве интерпретатора CPython.

— Если кратко, какой у нас будет план? Сначала мы поговорим о том, почему будем изучать именно Python. Затем посмотрим, как работает интерпретатор CPython более глубоко, как он управляет памятью, как устроена система типов в Python, на словари, генераторы и исключения. Я думаю, это займет примерно час.
Читать полностью »

Сегодня я собираюсь поговорить про адресацию памяти: один, казалось бы, небольшой, и тем не менее удивительно непростой элемент семантики команд архитектуры х86_64. В особенности хочется поговорить про команду mov и то, как через только одну эту команду х86_64 пользователю становятся доступны различные методы адресации памяти.

Я не буду говорить про остальные затрагивающие память команды (то есть, благодаря CISC, почти все остальные), команды которые пишут массивные фрагменты памяти (это о тебе, fxsave), или иные касающиеся темы вопросы (модели кода, независящий от адреса код, и бинарная релокация). Я также не буду затрагивать исторические режимы адресации или режимы, которые активны при работе процессора x86_64 не в 64-битном режиме (т.е. любые отличные от long mode с 64-битным кодом).

Некоторые ограничения

Несмотря на кошмарное наследие кодирования команд х86_64, а может и благодаря ему, у адресации памяти есть некоторые ограничения.

Начнем с хорошего:

  • На достаточно высоком уровне в архитектуре х86_64 есть всего два режима адресации.
  • Все регистры в обоих режимах адресации должны быть строго одинакового размера. Другими словами, мы не можем странным образом смешивать 64, 32 и 16-битные регистры и получать актуальный адрес — в кодировании х86_64 для подобного маневра попросту нет места.

Читать полностью »

Рассказывать начинающим инженерам истории о том, как ты когда-то серьёзно облажался – это хороший способ помочь им бороться с синдромом самозванца.

Это был, наверное, 1984-1985 год. Тогда я был 25-летним подающим надежды программистом с пятилетним стажем. Я и ещё один программист писали и поддерживали набор приложений, похожих на сегодняшний Office: электронные таблицы, текстовый процессор, база данных, плоттер и т.п. Мы настраивали всю эту систему для трёх-четырёх вертикальных рынков [бизнес-клиентов узкоспециальной направленности / прим. перев.].

Большую часть текстового процессора писал я сам. Писал я на Форте, и для различных вариантов комбинаций операционок и процессоров. Молодёжи невдомёк, но в те времена новые микрокомпьютеры со своей особой ОС и одним из нескольких вариантов процессоров выходили раз в несколько месяцев.

Форт использовал обмен блочными данными с диском. Каждый блок имел длину в 1 кб, и чтобы сохранить что-нибудь больше 1 кб, нужно было работать с мастер-блоком файла, где хранились смещения всех блоков с данными – по сути, это была пара списков, занятых и незанятых блоков.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js