Вопрос: Почему у системной оперативной памяти нет резервной копии аккумулятора так же, как у CMOS? [закрыто]


Это продолжение Почему операционная система должна быть нестабильной?, Хотя вопрос отвечает, почему основная память компьютера не может быть энергонезависимой, мне кажется, что Почему мы не можем просто создать резервную копию DRAM с батареей, чтобы сохранить ее содержимое в сапогах,

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

Так, Какие практические причины существуют для того, чтобы не иметь возможности сконструировать основную память с батарейным питанием, такую ​​как используемые в CMOS и игровых картриджах? 

Заметка : Я хотел бы получить ответы, которые иллюстрируют практические проблемы, связанные с разработкой такой системы, а не сравнивать ее с существующими технологиями, такими как suspend / hibernate.


4
2017-12-17 18:26


Источник


Как это будет отличаться от приостановленного состояния? - ernie
ОЗУ необходимо обновить, поэтому вам также потребуется включить контроллер памяти. В наши дни это часть процессора, поэтому часть этого может потребоваться для включения. И деци Уоттс. Я измерил увеличение на 2-3 ватта за каждый дополнительный модуль DIMM (DDR3-533MHz, плата i920 / X58). - Hennes
Вероятно, ваше определение «незначительное» не соответствует фактическому потреблению и емкости аккумулятора по сравнению с временем. Предполагая 10W и 1000 часов в режиме ожидания, вам нужна батарея мощностью 10 кВт, которая составляет около 4 "C", NiMH, плюс зарядка, преобразование напряжения и т. Д. Конечно, можно просто использовать статическое ОЗУ и не потреблять батареи при выключенном , - mpez0
@Ash, вы удовлетворены предложенными ниже ответами? Я на один нет. Самое близкое, что кто-либо пришел, чтобы удовлетворительно ответить на вопрос, - это комментарии от Hennes а также mpez0, Фактически они затрагивают вопрос о том, что практическое причины, по которым они не могут сделать память с батарейным питанием, как те, которые используются в CMOS и игровых картриджах. Ответ заключается в том, что макияж и количество современной ОЗУ делают его слишком голодным для использования такой маленькой батареи. - Synetech
Это не новая концепция, более старая вещь, которая никогда не занималась (стоимость запретительная и маленькая размер GiB) является предметом от Acard forums.techarena.in/motherboard-processor-ram/1125600.htm - Carl B


Ответы:


Введение источника питания в ОЗУ называется включением компьютера, то, о чем вы говорите, в основном просто выключает ваш компьютер и нажимает кнопку сна.
Расширенный ответ:
Он уже реализован в той мере, в какой позволяет текущее аппаратное обеспечение, режим ожидания отключает все аппаратные средства, не имеющие существенного значения для поддержания состояния компьютера в ОЗУ, поэтому идеи являются такими же, кроме концепции отключения машины. Чтобы фактически перезагрузить машину в предыдущее состояние, будет полагаться на наличие свободного пространства в ОЗУ и ГЛАВНЫЙ модификации ядра, поэтому, если вы не перепроектируете ядро ​​NT или комиссию Microsoft, чтобы создать эту функцию, само программное обеспечение делает ее невозможной.


4
2017-12-17 18:31



Акцент на функцию сна. - Doktoro Reichard
-1. Вопрос заключается в том, чтобы включить ОЗУ из батареи, которая не режим сна. Поставьте компьютер в режим сна, отсоедините шнур питания и проверьте, будет ли ОЗУ сохранена. Ноутбуки считаются обманом;) - gronostaj
@gronostaj рассматривает спящий режим как эквивалент «маломощного состояния». У ноутбуков нет этой проблемы, потому что они могут заставить себя на мгновение. В вашем случае, как бы вы сохраняли RAM на рабочем столе без шнура питания? Ответ: батарея. - Doktoro Reichard
@gronostaj Вопрос в том, чтобы обеспечить питание ОЗУ, чтобы сохранить состояние и сохранить время загрузки, я не упоминаю об энергоснабжении, поэтому его спать и заменять блок питания для батареи все равно будет работать.
@gronostaj Вопрос о сохранении состояния компьютера в оперативной памяти и «практичности реализации такого резервного источника» практичности, относящейся к адаптации этого к современному ПК, я просто сказал, почему бы вам когда-нибудь закрыть компьютер, когда вы хотите сохранить состояние, когда вы можете сохранить власть, используя функцию сна. Я также упомянул о потенциальных препятствиях для создания состояния сохранения при выключении, потому что он также спросил об этом.


Добавив к тому, что сказал Словки, причина, по которой Сон работает, заключается в том, что вы не перезагрузка,

Данные в ОЗУ имеют смысл, если вы знаете, что и где оно находится. Точно так же нет никакого явного правила: при загрузке любая программа должна хранить свою информацию в любом месте ОЗУ (есть, конечно, исключения).

Если то, что вы предлагаете (сохраняя информацию о оперативной памяти между перезагрузками), было принято на практике, ОС должна была бы стать средний человек между каждой запущенной программой и информацией, присутствующей в ОЗУ. Для этого вам нужно будет хранить адреса каждой части информации в ОЗУ, а затем сообщать программам о доступе к ним.

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

Сон помещает ваш компьютер в состояние с низким энергопотреблением, так что состояние компьютера сохраняется. Операция с ОЗУ или диском не должна происходить, когда компьютер находится в режиме сна.

Существует также функция Hibernate, в которой вместо использования энергозависимой ОЗУ вместо этого используйте энергонезависимое хранилище (ваш жесткий диск или SDD) для хранения содержимого ОЗУ. В этом случае вы не используете какую-либо власть.


3
2017-12-17 18:47



Хорошая работа по основательности вашего ответа. Еще один момент заключается в том, что для перепрограммирования всех современных ядер ОС просто потребуется обработать идею о том, что RAM уже загружается при загрузке, и я даже не уверен, сможет ли сам BIOS справиться с этим. Плюс, если состояние сохранено при 100% использовании ОЗУ, тогда будет потеря данных, чтобы получить BIOS / Kernel / Init-Systems, загруженные в ОЗУ.
@Slowki вы можете добавить вышеуказанные данные также к своему ответу. Они указывают действительные баллы. - Ashildr


Эта идея может быть вредной. Если вы выключили компьютер и память все еще сохраняла его содержимое, то изменение чего-либо на компьютере может быть разрушительным.


1
2017-12-17 18:49



Хотя это допустимое возражение, предположительно, если бы кто-то делал что-то вроде того, что просит ОП, был бы способ фактически закрыть систему. Как и в ATX PSU, часто есть переключатель сзади, который фактически отключает их, а не просто устанавливает их на мощность отключения государство, - Michael Kjörling


Как заявил Хеннс в своем комментарии, ОЗУ требует непрерывного обновления не только власти. В дни более простых процессоров это было сделано путем чередования циклов обновления с циклами данных на системной шине. Таким образом, идея резервного аккумулятора могла быть достигнута за счет сохранения процессора. Тем не менее, это было более известно как оставляющее власть, так что это не улавливало. Технология батареи тоже была не такой эффективной, что батареи для ноутбуков были больше и тяжелее.

В более современное время процессор содержит блок управления памятью для обновления ОЗУ. Таким образом, ваша идея теперь требует сохранения только одной части процессора - MMU - при питании. Для этого потребуется редизайн процессора.

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

Все вышесказанное, конечно же, ожидает, что все остальные компоненты; HDD, экран и т. Д. Отключены.


1
2017-12-17 19:42



Но проблема в том, что использование телефонного процессора (так называемого ARM-процессора) подразумевает 2 вещи. OS, которая была написана для платформы ARM и приложений, чтобы пойти с ней. При этом Windows 8 RT это именно так. - Doktoro Reichard
Хорошая точка @ Докторо Рейхард. ПК - это больше, чем просто аппаратное обеспечение, ОС должна его обрабатывать. Я также видел некоторые телефоны Samsung и Asus, которые можно состыковать как ноутбук, что не слишком отличается от подхода. - Judith
Этот ответ неверен по нескольким причинам. MMU переводит виртуальные адреса на физические адреса и устанавливает ограничения доступа. Он не обновляет DRAM, это глупо, не говоря уже о том, что он удаляется из DRAM несколькими уровнями кеша. Задача контроллера памяти - взаимодействовать с DRAM и выполнять обновления. Только в последние годы контроллеры памяти фактически были интегрированы в CPU. Кроме того, все поколения SDRAM поддерживают режимы выключения питания с самообновлением, которые не требуют ничего от контроллера памяти, но удерживают несколько линий управления на определенном уровне. - Andreas Bombe


Почему бы не ввести источник батареи в ОЗУ, чтобы сохранить его содержимое через ботинки?

Фактически, ваш компьютер уже использует память с батарейным питанием. Вам когда-либо приходилось перезагружать настройки BIOS, когда вы не могли загрузить компьютер? Это можно сделать двумя способами: с помощью перемычки или удалением батареи CMOS. Эта батарея используется для питания небольшого количества памяти, используемой для сохранения настроек BIOS. Это не ОЗУ, но это близко к тому, о чем вы просите, поскольку вы можете видеть, что мы уже используем рабочую память.

На данный момент мы не используем оперативную RAM, потому что у нас есть твердотельные накопители. Твердотельные SSD-накопители позволяют загружать вашу ОС в считанные секунды, и они дешевле, чем оперативная память. Именно так, когда дело доходит до чтения файлов с диска.

Но SSD - это тотальные смены игр. Итак, почему мы не использовали оперативную RAM до SSD эпоха? Потому что 20 ГБ (размер моей папки Windows) на место на жестком диске стоит 2,2 и 20 ГБ DDR3, стоит 220 долларов США (лучшие предложения от Newegg). Если вы можете себе это позволить, доступны некоторые варианты,

Я говорю только о хранении файлов в оперативной памяти, потому что с текущим аппаратным и программным обеспечением невозможно поддерживать состояние перезагрузки. Кельтари уже отправлено что, например, изменение видеокарты может быть разрушительным для аппаратного или программного обеспечения. То же самое относится к выполнению модификаций диска.

Например, один и тот же файл в ОЗУ и на жестком диске может потерять синхронизацию в какой-то момент, если вы вытащите диск (или ОЗУ) и повесьте с некоторыми файлами). Проверка совместимости файлов RAM с файлами на диске происходит так же медленно, как просто чтение с диска, поэтому это приведет к поражению цели. Вы должны помнить, чтобы сбросить RAM (например, аккумуляторную батарею CMOS) или создать аппаратные системы, которые это сделают, но для них также потребуется источник питания. Построение такой системы просто сложно, если не невозможно.

И наконец, государство должен быть изменчивым - как противоположное файлы, который должен оставаться. Так разрабатываются компьютеры. Чтобы изменить это, вам придется переосмыслить все, с чем мы столкнулись, поскольку энергозависимая оперативная память была впервые использована на компьютере.


1
2017-12-17 19:45



Первый абзац неверен, поскольку BIOS не нуждается в «случайном доступе» к его памяти. Кроме того, второй последний абзац не имеет большого смысла, поскольку оперативная память и жесткие диски обычно не предназначены для удаления (было хорошее сообщение о hotplugging) - Doktoro Reichard
@DoktoroReichard Я не говорю об удалении жесткого диска из работающей системы, но удалении его вообще. Например, если вы хотите использовать его для перемещения некоторых данных с одного ПК на другой, а затем подключите его обратно. Или вы могли бы «одолжить» ОЗУ при диагностике проблем с ОЗУ с другого ПК. - gronostaj
@DoktoroReichard просто из любопытства, какая память используется для сохранения настроек BIOS? - gronostaj
Это форма ПЗУ, Кроме того, примеры, которые вы дали, хотя и действительны, не все так распространено. - Doktoro Reichard
@DoktoroReichard Я предполагаю, что эта ссылка относится к памяти, в которой находится сама BIOS, а не настройки BIOS. Я считаю, что они хранятся в какой-то энергозависимой памяти, иначе аккумуляторный трюк не сработает. Во всяком случае, я отредактировал первый абзац. - gronostaj