вопрос который я сейчас напишу, связан с длинными спорами меня и многих людей со мной. Но из за того что просто лень набрать в гугл, и интересно решить эту задачу самому, и есть желание спросить у народа, я его задам тут. В общем к делу. Многие из вас пользуются ждущем режимом. В моем понимании, работа этого режима состоит в том, что все переносится, с ram в rom. Останавливаются диски. Соответственно глушится система. В общем что мы имеем после перехода, в этот режим: остановленный хард, очищенную ram, выключенный монитор, ну и все остальные устройства. Компьютер так сказать находится в ждущем режиме, он ждет активности со стороны пользователя, для того чтобы из него выйти. Вопрос: почему получается так, что нажав всего лишь одну клавишу на клавиатуре, мы выходим из этого ждущего режима, т.е. как это происходит? Моя версия: В общем нажимается клавиша, сигнал идет на контролер, а дальше куда? (вот на этом моя версия заканчивается). Далее запускается какой то файл, который переносит, обратно в ram, то что переносилось в rom, а потом запускается сама система и процессы которые находились в активном состоянии до перехода пк в ждущий режим. Хотелось бы получить настолько подробный ответ, как мой к вам вопрос. (надеюсь что подробно вопрос описал). Сылки можете не выкладывать, все равно смотреть не буду, пока задача не решится именно своими мозгами в этой теме, потом будет интересно почитать и сравнить. p.s. модерам, - удаляйте спокойно, если нарушил правила этой темой, можете и минус поставить, а если нет, прошу уделить внимания этой теме всем.
Не путать ждущий и спящий. Один просто вырубает мониторы, жёсткие диски и ослабляет обороты кулеров. Другой записывает оперативку на диск.
Получается при спящем режиме копьютер не может не работат как сервак, и даже тупо не может раздовать торрент
Sandjuro Спящий режим это ПОЛНОЕ выключение компа. Т.е ты можешь выдернуть шнур из розетки и ничего не изменится.Просто при таком выключении оператива сливается на винт и соответственно при включении быстрее идёт загрузка Ответ на вопрос: Ты сам то как думаешь будет сервак работать при выключенном компе?
Где вы там вопрос про сервер увидили? *)))) Я понимаю что не будет, но вопрос вот в чем, допустим когда компьютер выключен мы его включаем и первым же делом запускается Bios, который проверяет устройства на работоспособность и т.д. потом загружается с загрузочого раздела какой нибудь менеджер автозагрузки. т.е. я к тому что я могу себе представить целую цепочку операций, при включении компьютера. Но при выходе из ждущего режима не запускается ведь Bios правильно? А что тогда запускается если все отключено=) ???
Нифига он не путает- ждущий режим более "бдительный", чем спящий. Остается работать только память, в то время, как при спящем данные перносятся на хард. Комп может проснутся даже от активности какой-либо программы.
iddqd-> т.е. я могу запустить какой нибудь брут или проверку, и она у меня будет работать даже в ждущем режиме? А как тогда она может работать, если останавливается хард?
Ждущий режим основан на работе прерываний. Во время перехода в ждущий режим память не очищается, а остается активной. При этом процессор перестает быть активным, но не выключенным. Необходимо напомнить, что прерывание от устройства обрабатывается не процессором, а контроллером прерываний, который успешно справляется со своей работой и без процессора. Задача контроллера прерываний всего одна - приоставка работы текущего процесса на процессоре. Но происходит это не прямо, а косвенно. При возникновении прерывания, контроллер прерывания определяет ячейку в памяти, где находится обработчик данного прерывания (процесс, нить) и передает процессору команду о передаче управления обработчику прерывания. У каждого прерывания есть свой приоритет. В процессорах от Intel всего возможно иметь 32 разных приоритета. Если в данный момент не выполняется обработка прерывания более высокого приоритета, то будет вызван обработчик прерывания из оперативной памяти и процессор начнет свою работу. Процесс (обработчик прерываний) получит вектор прерывания или его номер, в зависимости от архитектуры процессора. Во всех данных шагах не используется обращение к жесткому диску. При этом "разбудить", т.е. активировать работу процессора может любое прерывание, т.е. по сути любой контроллер прерывания. По этой причине можно перевести процессор в режим ожидания с низким энергопотреблением, оставив включенным все контроллеры прерывания и оперативную память и они смогут активировать работу процессора через диспетчер прерываний. Куда легче включить жесткий диск, когда процессор уже активен. Я рассказал все проще, чем есть на самом деле, опустив незначительные детали для общего понимания.
Ни один процесс (нить, программа) не будет работать, т.к. процессор будят контроллеры прерываний. По сути все процессы в системе "замораживаются" до появления прерывания, которое активирует работу процессора (процессоров). Но стоит отметить тот факт, что бывают и программные прерывания. Т.е. можно создать программу, которая даст задание контроллеру "таймер" сообщить программе об истечении, например, 5 минут. После этого перевести компьютер в ждущий режим. Через пять минут, контроллер прерывания "разбудит" процессор из-за возникшего прерывания от таймера, чтобы процессор передал информацию об истечении 5 минут той программе, которая установила данный таймер, т.е. сделала программное прерывание. В данном случае суть одна, только источник прерывания не внешний, а внутренний (программный). Я описал образно, опуская технические моменты и терминалогию.