PDA

Просмотр полной версии : [прошу уделить внимание] вопрос про форточки


procedure
26.04.2008, 03:38
вопрос который я сейчас напишу, связан с длинными спорами меня и многих людей со мной. Но из за того что просто лень набрать в гугл, и интересно решить эту задачу самому, и есть желание спросить у народа, я его задам тут.
В общем к делу. Многие из вас пользуются ждущем режимом. В моем понимании, работа этого режима состоит в том, что все переносится, с ram в rom. Останавливаются диски. Соответственно глушится система. В общем что мы имеем после перехода, в этот режим: остановленный хард, очищенную ram, выключенный монитор, ну и все остальные устройства.
Компьютер так сказать находится в ждущем режиме, он ждет активности со стороны пользователя, для того чтобы из него выйти.
Вопрос: почему получается так, что нажав всего лишь одну клавишу на клавиатуре, мы выходим из этого ждущего режима, т.е. как это происходит?

Моя версия: В общем нажимается клавиша, сигнал идет на контролер, а дальше куда? (вот на этом моя версия заканчивается). Далее запускается какой то файл, который переносит, обратно в ram, то что переносилось в rom, а потом запускается сама система и процессы которые находились в активном состоянии до перехода пк в ждущий режим.

Хотелось бы получить настолько подробный ответ, как мой к вам вопрос. (надеюсь что подробно вопрос описал).
Сылки можете не выкладывать, все равно смотреть не буду, пока задача не решится именно своими мозгами в этой теме, потом будет интересно почитать и сравнить.

p.s. модерам, - удаляйте спокойно, если нарушил правила этой темой, можете и минус поставить, а если нет, прошу уделить внимания этой теме всем.

FooBar
26.04.2008, 03:49
ты походу дела путаешь спящий и ждущий режим

Otaku
26.04.2008, 03:53
Не путать ждущий и спящий.
Один просто вырубает мониторы, жёсткие диски и ослабляет обороты кулеров.
Другой записывает оперативку на диск.

smOleg
26.04.2008, 04:42
да. когда перепись рам на диск то включить любой кнопкой не получится. там толкьо повер

Petr
26.04.2008, 05:02
Получается при спящем режиме копьютер не может не работат как сервак, и даже тупо не может раздовать торрент

Jokester
26.04.2008, 10:48
Sandjuro
Спящий режим это ПОЛНОЕ выключение компа. Т.е ты можешь выдернуть шнур из розетки и ничего не изменится.Просто при таком выключении оператива сливается на винт и соответственно при включении быстрее идёт загрузка
Ответ на вопрос:
Ты сам то как думаешь будет сервак работать при выключенном компе? :D

procedure
26.04.2008, 12:30
Ты сам то как думаешь будет сервак работать при выключенном компе?
Где вы там вопрос про сервер увидили? *))))
Я понимаю что не будет, но вопрос вот в чем, допустим когда компьютер выключен мы его включаем и первым же делом запускается Bios, который проверяет устройства на работоспособность и т.д. потом загружается с загрузочого раздела какой нибудь менеджер автозагрузки. т.е. я к тому что я могу себе представить целую цепочку операций, при включении компьютера.
Но при выходе из ждущего режима не запускается ведь Bios правильно?
А что тогда запускается если все отключено=) ???

iddqd
26.04.2008, 12:53
Нифига он не путает- ждущий режим более "бдительный", чем спящий.
Остается работать только память, в то время, как при спящем данные перносятся на хард.
Комп может проснутся даже от активности какой-либо программы.

procedure
26.04.2008, 13:00
iddqd-> т.е. я могу запустить какой нибудь брут или проверку, и она у меня будет работать даже в ждущем режиме?
А как тогда она может работать, если останавливается хард?

XCorleone
26.04.2008, 13:33
Ждущий режим основан на работе прерываний. Во время перехода в ждущий режим память не очищается, а остается активной. При этом процессор перестает быть активным, но не выключенным. Необходимо напомнить, что прерывание от устройства обрабатывается не процессором, а контроллером прерываний, который успешно справляется со своей работой и без процессора. Задача контроллера прерываний всего одна - приоставка работы текущего процесса на процессоре. Но происходит это не прямо, а косвенно. При возникновении прерывания, контроллер прерывания определяет ячейку в памяти, где находится обработчик данного прерывания (процесс, нить) и передает процессору команду о передаче управления обработчику прерывания.

У каждого прерывания есть свой приоритет. В процессорах от Intel всего возможно иметь 32 разных приоритета. Если в данный момент не выполняется обработка прерывания более высокого приоритета, то будет вызван обработчик прерывания из оперативной памяти и процессор начнет свою работу. Процесс (обработчик прерываний) получит вектор прерывания или его номер, в зависимости от архитектуры процессора.

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

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

IIAHbI4
26.04.2008, 13:40
http://www.yaplakal.com/html/emoticons/green.gif

XCorleone
26.04.2008, 13:42
iddqd-> т.е. я могу запустить какой нибудь брут или проверку, и она у меня будет работать даже в ждущем режиме?
А как тогда она может работать, если останавливается хард?

Ни один процесс (нить, программа) не будет работать, т.к. процессор будят контроллеры прерываний. По сути все процессы в системе "замораживаются" до появления прерывания, которое активирует работу процессора (процессоров). Но стоит отметить тот факт, что бывают и программные прерывания. Т.е. можно создать программу, которая даст задание контроллеру "таймер" сообщить программе об истечении, например, 5 минут. После этого перевести компьютер в ждущий режим. Через пять минут, контроллер прерывания "разбудит" процессор из-за возникшего прерывания от таймера, чтобы процессор передал информацию об истечении 5 минут той программе, которая установила данный таймер, т.е. сделала программное прерывание. В данном случае суть одна, только источник прерывания не внешний, а внутренний (программный).

Я описал образно, опуская технические моменты и терминалогию.

procedure
26.04.2008, 13:58
XCorleone-> молодец! Разрулил тему. max +

Petr
26.04.2008, 18:21
Sandjuro
Спящий режим это ПОЛНОЕ выключение компа. Т.е ты можешь выдернуть шнур из розетки и ничего не изменится.Просто при таком выключении оператива сливается на винт и соответственно при включении быстрее идёт загрузка
Ответ на вопрос:
Ты сам то как думаешь будет сервак работать при выключенном компе? :D
Я не задавал вопрос, я сделал вывод :\

XCorleone
26.04.2008, 18:44
При переходе в спящий режим не вся оперативная память сохраняется на жесткий диск.