Форум программистов, компьютерный форум CyberForum.ru

Возможно ли написать программу, минующую в работе оперативную память? - C++

Восстановить пароль Регистрация
 
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
12.07.2013, 14:15     Возможно ли написать программу, минующую в работе оперативную память? #1
Скорее всего вопрос немного не к теме раздела, но всё же. Почему необходимо загружать программы перед началом выполнения в оперативную память? Возможно ли выполнять программы без загрузки в оперативную память с жёсткого диска и память выделять для процессов на жёстком диске?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.07.2013, 14:15     Возможно ли написать программу, минующую в работе оперативную память?
Посмотрите здесь:

Выделить память под массив в 100500 индексе. Возможно ли? C++
Возможно в С++ написать команду, которая бы запускала указанную программу? C++
Написать программу, которая вводит целое число n и выделяет память C++
C++ Отображение файла в оперативную память
На qt creator возможно написать программу Эмулятор браузера? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,308
12.07.2013, 14:24     Возможно ли написать программу, минующую в работе оперативную память? #2
Зависит от архитектуры CPU. Почитай про фон-Немановскую и Гарвардскую архитектуры.
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
12.07.2013, 14:32  [ТС]     Возможно ли написать программу, минующую в работе оперативную память? #3
Вот вообще почему возник такой вопрос. Виртуальная память, насколько мне известна, была изобретена для того, чтобы можно было выполнять программы, размер которых превышает физический объём оперативной памяти. При это часть страниц виртуальной памяти располагается на HDD. Ну с другой стороны можно же было программы выделять непосредственной на жёстком диске, а защиту процессов реализовывать на основе адресных пространств. Или такой способ работы был бы слишком медленным?
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,308
12.07.2013, 14:36     Возможно ли написать программу, минующую в работе оперативную память? #4
Сравни скорости доступа к оперативной памяти и к HDD. И сделай выводы.
Kuzia domovenok
 Аватар для Kuzia domovenok
1882 / 1737 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
12.07.2013, 16:16     Возможно ли написать программу, минующую в работе оперативную память? #5
можешь написать операционную систему, минимизирующую в памяти всё, что тебе взбредётся. Но программе, работающей в Windows и.т.п. никто не даст вытворять такие трюки
Tulosba
12.07.2013, 16:21
  #6

Не по теме:

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Но программе, работающей в Windows и.т.п. никто не даст вытворять такие трюки
А без ОЗУ комп вообще не стартанет.

bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
12.07.2013, 16:25  [ТС]     Возможно ли написать программу, минующую в работе оперативную память? #7
Цитата Сообщение от Tulosba Посмотреть сообщение
А без ОЗУ комп вообще не стартанет.
Это только обычные ОС, которые загружают систему в оперативку.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
12.07.2013, 16:34     Возможно ли написать программу, минующую в работе оперативную память? #8
bgm123, до ОС дело еще не доходит.
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
12.07.2013, 16:43  [ТС]     Возможно ли написать программу, минующую в работе оперативную память? #9
Цитата Сообщение от Tulosba Посмотреть сообщение
до ОС дело еще не доходит.
Почему же не доходит? Bios проверит все устройства и поймёт, что ему некуда грузить ОС.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
12.07.2013, 16:47     Возможно ли написать программу, минующую в работе оперативную память? #10
bgm123, насколько я помню (пару лет назад проверял), без ОЗУ современный комп просто будет пищать характерным для конкретного BIOS'а образом и никаких дальнейших телодвижений сделать не получится, кроме как воткнуть планку памяти.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
17.07.2013, 10:56     Возможно ли написать программу, минующую в работе оперативную память? #11

Не по теме:

bgm123, BIOS ничего не поймёт, потому что BIOS не грузит ОС. BIOS грузит загрузчик, который и загружает ОС (хотя, при желании, загрузчик тоже можно назвать ОС).


По факту, действительно, скорость передачи данных у современной среднестатистической DDR3-1600 около 13 ГБ/с. У современных SSD же скорость чтения/записи что-то около 200 МБ/с. Итого SSD медленнее RAM примерно в 65 раз.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,333
Завершенные тесты: 1
17.07.2013, 11:20     Возможно ли написать программу, минующую в работе оперативную память? #12
Цитата Сообщение от Tulosba Посмотреть сообщение
без ОЗУ современный комп просто будет пищать
Да. Но наверное именно потому, что биос проверит наличие оперативной памяти и, не найдя таковой, поймет, что ему некуда грузить ось (загрузчик оси). И вообще все тщетно и жизнь не удалась.
Гипотетически, только предположение, можно наверное переписать биос и загрузчик так, чтобы для их работы не требовалась оперативная память. А все необходимые операции проходили на медленном винте.
CheshireCat
17.07.2013, 11:33
  #13

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
А без ОЗУ комп вообще не стартанет.
Это только если под "комп" иметь в виду а-ля "стандартный офисный ПК x86/Windows".

Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
17.07.2013, 12:03     Возможно ли написать программу, минующую в работе оперативную память? #14
Цитата Сообщение от silent_1991 Посмотреть сообщение
У современных SSD же скорость чтения/записи что-то около 200 МБ/с.
По-моему, основной прирост (по сравнению с обычными HDD) именно при чтении, на запись скорости соизмеримы. По крайней мере такую картину наблюдал на своем компе.
Цитата Сообщение от CheshireCat Посмотреть сообщение
Это только если под "комп" иметь в виду а-ля "стандартный офисный ПК x86/Windows".
Сомневаюсь, что ТС делал акцент на каких-то промышленных машинах.
Просто во времена 486, можно было и без планок памяти загрузиться на тех же самых "стандартных ПК". А сейчас уже нельзя. Ну а если продолжить тему нестандартных компов, то есть и безбиосовые компы.

Добавлено через 1 минуту
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Но наверное именно потому, что биос проверит наличие оперативной памяти и, не найдя таковой, поймет, что ему некуда грузить ось (загрузчик оси).
Легко проверить. Вынимаем винт и смотрим на результат.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,333
Завершенные тесты: 1
17.07.2013, 12:11     Возможно ли написать программу, минующую в работе оперативную память? #15
Цитата Сообщение от Tulosba Посмотреть сообщение
Легко проверить. Вынимаем винт и смотрим на результат.
Я не специалист. Мне трудно судить. Но можно тест веселей - вынимаем любой кондер с матери.
Tulosba
17.07.2013, 12:21
  #16

Не по теме:

Цитата Сообщение от SatanaXIII Посмотреть сообщение
Но можно тест веселей - вынимаем любой кондер с матери.
Лучше сразу пойти помочиться на высоковольтный провод.

SatanaXIII
17.07.2013, 12:21
  #17

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Лучше сразу пойти помочиться на высоковольтный провод.
Поду проверю на сколько это лучше. Скоро приду.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.07.2013, 13:41     Возможно ли написать программу, минующую в работе оперативную память?
Еще ссылки по теме:

C++ Считать файл в оперативную память построчно
Как лучше копировать память, обмениваться указателями и т.д. при работе с кучей динамических библиотек (DLL) ? C++
C++ Возможно ли написать программу, пишущую программы?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
zer0mail
2187 / 1870 / 187
Регистрация: 03.07.2012
Сообщений: 6,650
Записей в блоге: 1
17.07.2013, 13:41     Возможно ли написать программу, минующую в работе оперативную память? #18
Возможно, как только появится быстрая, емкая, энергонезависимая и дешевая память - не раньше. А пока все эти качества не удается соединить в одном устройстве.
Yandex
Объявления
17.07.2013, 13:41     Возможно ли написать программу, минующую в работе оперативную память?
Ответ Создать тему
Опции темы

Текущее время: 17:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru