Очень нужная на сервере вещь
кто нибудь делал?
ссылки? грабли?
замена ядра без перезагрузки
Не, вряд ли.
Точнее не на сегодня. Потом что-то точно будет, но не сегодня.
[ Редактирование 19.11.2006 - 18:29:11 ]
А почему вы думаете, что это возможно? Есть kexec -- это просто "быстрая" перезагрузка, без POST. А вообще без перезагрузки сменить невозможно.
НЛО вон летают вопреки всем законам физики, никто не верит, а они летают.. А почему бы ядру не поменяться без прерывания работы системы лет так через 10? Не знаю, я бы не был так категоричен..
Отсыпай.
Сначала хотел было написать, что подобное невозможно даже в теории, т.к. невозможно сменить управляющую часть (ядро) без выгрузки управляемого (модули), но потом подумал, что в теории возможно(!) при наличии более одного работающего ядра, когда управление от предыдущего передается новому в то время, когда первое еще работает, после полного перехода пойдет выгрузка старого. Вполне возможно, что до этого уже кто-то додумался, но почему-то сомневаюсь, что подобные вещи можно проделать с обычным линуксовым ядром.
Гм. Простите за офтоп. Возможно я и не прав. Когда-то давным-давно. Еще когда была у меня 386sx... На сказку прямо похоже... И когда я о линуксе еще не знал... Была у меня дискета с DOS`ом. Так вот, не помню уже точно команд, но толи sys C:\, толи что-то подобное переносило систему с дискеты на винт, потом что-то вроде shell c:\command.com и дискету можно было вынимать. Система работала уже с жесткого. Если я не ошибаюсь, смена ядра происходила без перезагрузки. Стало быть, это возможно. Еще раз дичайшее сорри за офтоп и простите, если ошибся. :-)
комманда sys - копировала системные файлы но не перезапускала операционку с одного ядра на другое
У тебя просто файло переносилось, система же работала благодаря тому, что было подгружено в память. В топике же вроде говорится не только о замене файлов в /boot и перенастройкой загрузчика, но и о переключении на новое ядро (на управление системой новым ядром) без перезагрузки.
На самом деле такое возможно :) В кластерах - одна машина выключается - работает другая. Все давно уже известно :) Думаю не проблема особая запустить два ядра на одной машине, тем более многоядерной. Вопрос, только кому это нужно, если можно поставить две машины, одна страхует другую :)
2Sunder:
бросай курить :)
>Думаю не проблема особая запустить два ядра на одной машине, тем более многоядерной.
Такое уже существует и называется RTLinux (что это такое написано тут: http://ru.wikipedia.org/wiki/RTLinux). Но про замену ядра без перезагрузки на нём ничего не известно.
Суть идеи в принципе сходна с идеей замены центрального процессора "на ходу", в принципе возможно... однако следует согласовать множество состояний, которых в случае с процессором всё же меньше, на порядки, чем в случае с ядром.
2frug:
ну в sunках и проц и оперативку, и еще много чего можно менять на "горячую"
чтобы не отходить от темы: все зависит от архитеркуры ос, в монолитной сильно сомневаюсь в замене ведра без его остановки, выгрузки старого, и загрузки нового, в микроядерной архитетуре - почему бы и нет..
<span class='smallblacktext'>[ Редактирование 12.06.2007 - 13:35:37 ]</span>
А какая разница, микро-ядро или монолитка ? В любом случае будет основной - управляющий компонент, замена которого составит основную проблему. Кроме того, без остановки врядли получится заменить тот же проц или оперативку, даже на тех же "sunках". Замену без остановки произвести в любом случае не получится, но вот "прозрачная" остановка в принципе возможна, однако в таком случае понадобится компонент, который будет держать на себе "потолок" в то время, когда основные "опоры" меняют на другие...
[quote=frug]А какая разница, микро-ядро или монолитка ? В любом случае будет основной - управляющий компонент, замена которого составит основную проблему. [/quote]
разница в том, что в микроведре на порядок меньше системный вызовов, в QNS, если мне память не изменяет, их вообще 14.. чем меньше системных вызовов реализованно в ядре, тем проще произвести его замену.. я не системный програмист, могу ошибаться, но к примеру, замена модуля в монолитных ядрах гораздо труднее и часто требует перезагрузки..
[quote=frug]Кроме того, без остановки врядли получится заменить тот же проц или оперативку, даже на тех же "sunках".[/quote]
чесное комсомольское! (: все серия E4900-E25K позволяет на ходу менять/добавлять/удалять процы, озу, сасы, блоки питания, etc.. это "у них" Uniboard называеца.. пс: меньше месяца назад апгрейдили оперативку в "шетидевятисотый" сан, "на горячую", те еще "приколы" были (:.. ниче, живет железка.. хотя, конечно, бородатые дятьки и рассказывали, что бывали случаи "короткого", при замене блоков питания, с печальными последствиями для серверов.. :(
[quote=frug]Замену без остановки произвести в любом случае не получится, но вот "прозрачная" остановка в принципе возможна, однако в таком случае понадобится компонент, который будет держать на себе "потолок" в то время, когда основные "опоры" меняют на другие...[/quote]
что по-твоему "прозрачная" остановка, "потолок" и "опоры"?
Что-то внутри меня сидит и подсказывает, что процесс замены ядра на ходу возможен, но по времени это не рационально. И аптайма все равно не избежать. Нафига тогда оно надо?

Последние комментарии
10 лет 15 недель назад
10 лет 34 недели назад
10 лет 44 недели назад
10 лет 45 недель назад
11 лет 34 недели назад
11 лет 34 недели назад
11 лет 34 недели назад
11 лет 35 недель назад
11 лет 35 недель назад
11 лет 36 недель назад