§2.2. Оперативная память

Компьютер — волшебная штука. Кажется, что ему под силу всё что угодно. Но на самом деле, единственная задача, которую решает компьютер — получать, обрабатывать и преобразовывать информацию. Важную роль в этом играют два компонента: центральный процессор и оперативная память.

Эти устройства буквально созданы друг для друга. Процессор хорошо считает, и делает это невероятно быстро. Но вот беда: он плохо запоминает результаты. Он может рассказать, что делал пару наносекунд назад, но не более того. Да и зачем ему большее, когда есть оперативная память. Она, кроме того, ещё и чуть ли не единственный носитель информации, который может поспевать за скоростью процессора, в отличие от, например, жёсткого диска, который пока раскрутится, пока доведёт считывающую головку… В общем, система образуется довольно эффективная.

Вечность пахнет кремнием

Через процессор проходят все данные. А где один, там и второй: так или иначе, рано или поздно, это всё обязательно «осядет» в оперативной памяти.

Программы хранят в ней временные данные, операционная система — слепки запущенных программ (называемых процессами), драйверы устройств — сигналы от устройств… В общем, всё, что происходит в компьютере в конкретный момент времени — там. Браузер, только что подставивший пароль от банка. Уведомления о личных сообщениях. Буфер обмена, в котором важные данные. Прямо фестиваль форензики!

…А порядка в ней нет

На деле всё обстоит несколько иначе. Оперативную память нельзя прочитать так же, как, скажем, содержимое папки «Мои документы» — для этого нет простых инструментов. Данные хранятся в ней совсем не так, как вы привыкли. Оперативная память состоит из очень большого числа транзисторов. У каждого из них есть два состояния, вкл. и выкл., а также адрес — грубо говоря, его номер по порядку. Вся работа с памятью заключается в том, что центральный процессор может читать и записывать биты по этим адресам. В ней нет ни файлов, ни иерархии — лишь адреса и значения.

Завершает картину тот факт, что всякая программа работает с памятью по-своему, и в этом так просто не разобраться. Порой даже разработчикам: попробуйте угадать, с чем связано аж 70% всех найденных уязвимостей.

Кроме того, нельзя просто так подойти к чьему-нибудь компьютеру, вынуть из него заветную плату, и пойти изучать её содержимое в безопасной обстановке. Обесточенные транзисторы мгновенно теряют свои свойства, а, следовательно, если вы не запаслись баллоном жидкого азота, то память вы теряете. А если бы запаслись, то, возможно, смогли бы заморозить плату памяти до температуры порядка −190 °C, при которой данные в ней продержатся немного подольше.

Выводы

  1. Почти вся информация, с которой работает компьютер, неизбежно оказывается в оперативной памяти.

  2. Оперативная память быстрее любого постоянного носителя, но за скорость приходится платить зависимостью от электричества.

  3. Жидкий азот.

§2.3. Файлы и их хранение ⟶