Top.Mail.Ru
? ?

Entries by tag: linux

Чудо пояснення цього чудового явища
В деяких операційних системах під час встановлення тої чи іншої програми або драйвера комп'ютер часто просить перезавантажити систему. Інколи ця процедура починає випробовувати наше терпіння. Наприклад, коли на свіжевстановлену систему інсталюється відразу багато програм та драйверів. В Лінуксі ж ви можете встановлювати та оновлювати програму без перезавантаження, мало того, в більшості випадків навіть не треба закривати саму програму під час оновлення. Давайте розберемося чому це так.

Справа в архітектурі тих файлових систем, які використовуються в Лінукс. Мало того, що вони не піддаються фрагментації, що виключає необхідність проводити таку нудну процедуру як дефрагментація, так ще Linux особливим чином обробляє файли.

Скажімо ви запустили програму, яка відкрила деякий файл (чи сукупність файлів — наприклад сам виконуваний файл програми). Доки програма запущена цей файл тримається відкритим (наприклад виконуваний код самої програми) і в системі виникає спеціальний вказівник, який вказує на місце файлової системи де розташовані необхідні дані. Якщо ви видалили файл, то на диску зникає запис про те, що цей файл існує, але вказівник всеодно вказує на місце на диску, де розташований відкритий в минулому файл. Ви можете створити новий файл з точно тим самим іменем як і видалений файл, фактично замінивши старий файл. Але запис на файловій системі буде вказувати на фізично інше місце. Оскільки місце, де був розташований старий файл ще вважається зайнятим.

І тут починається саме цікаве. Програми які звернулися до нашого файла до його видалення будуть бачити старий варіант, а ті, які звернулися після запису нового - новий. І місце на диску не звільниться до тих пір, доки не закриється остання програма, яка використовувала стару версію.

Іншими словами Лінукс не видаляє файл, доки він використовується, а тільки помічає його як “для видалення”. А тільки він звільниться — видаляє всі посилання на стару версію. Як тільки програма завершить роботу і запуститься знову - запускається вже її нова версія.

Цей метод спрацьовує з усіма файлами в Лінуксі, включаючи драйвери та системні файли. Неможливо так оновити лише один файл в системі - це файл ядра Лінкса (Linux Kernel). Тому що якщо ядро неможливо перезапустити не вимкнувши всю систему. Хоча ні. Є можливість вживу змінити ядро, якщо у вас хоча б два процесори. Існує хитра процедура, яка дозволяє на одному процесорі залишити старе ядро Лінукс, а на іншому процесорі запустити нове. Потім перекинути запущені програми з одного ядра на інше і погасити старе. Таку процедуру інколи роблять на критичних серверах, які неможна вимикати, а ядро треба оновити з певних причин.

Підсумуємо все сказане: кожна окрема програма в Лінуксі може бути оновлена навіть під час активної роботи. Єдине, що необхідно зробити - це перезапустити програму після оновлення, щоб активною стала нова версія. Причиною, яка може викликати необхідність перезавантаження комп'ютера лише одна — це заміна ядра Лінукс. І то не у всіх випадках.

Що це значить ? Це значить, що вся Лінукс система може бути оновлена в реальному часі, коли вона працює на повну катушку працюючи 24/7 (24 години в день, 7 днів на тиждень). Тому можна зрозуміти чому деякі інші операційні системи ніколи не зможуть досягнути такої роботоздатності і гнучкості як Лінукс.

джерело

Tags:

desktop < Linux

наверное все замечали, что каждый год кто-то возьмет да и на пишет статью о том, что данный год (ну или наступающий), будет годом десктопного линукса. Если порытся в инете, то это каждый год начиная с 2005. и за это время количество "десктопных" линуксов увеличило на... м 0,1% или 0,2%? ну ладна, пусть даже на ЦЕЛЫЙ 1%. вобщем, такими темпами линуксу до гордого наименования "десктопный" еще полвека минимум.
имхо, главная проблема сдесь именно в существовании сотен разных дистрибютивов. приэтом, когда подобный вопрос задали Торвальдсу, он ответил что-то типа "у каждого линукса своя ниша". вот я вроде не далекий от ИТ человек, но мне абсолютно не понятно, чем SuSe так сильно отличааестя от Mandriva или Fedora, или Ububtu от Kubuntu? какие это у них разные ниши? может кто знает - просветите. Есть даже версия Linux Ubuntu Satanic Edition! это плохо, что любой Вася может взять линукс, поправить файл или изменить предустановленный софт, и начать поставлять свой собственый линукс. Замечательно, что установив Suse я получил несколько аудио-видео проигрователей, но! зачем мне несколько? в чем разница? методом тыка удалось установить что у одного проблемы с кирилицей, а другой отказывался сохранять плейлисты. И такие маленькие траблы есть почти в каждом проге.
когда я ставлю ось, я хочу сразу же получить 1) работоспособное (винда) 2) надежное (линукс)ю Выходит покуда что-то одно. Но така как пару дней я не могу посвятить настройке линукса, приходится выбирать винду, увы.
вобще, когда-то немного работал удаденно под Solaris, очень понравилось. правда не знаю насколько сложно будет настроить и будет ли под ней работать весь линукс-софт....
а мораль такова - линукс имеет шанс вырости из 1% только после объеденения разработчиков над несколькими (небольгим количеством) осями, с действительно четкими различиями

Tags:

Latest Month

July 2014
S M T W T F S
  12345
6789101112
13141516171819
20212223242526
2728293031  

Syndicate

RSS Atom

Comments

  • kkud
    17 Sep 2012, 15:49
    америка погрузла в капіталізмі, який продукує консерванти
  • 17 Sep 2012, 04:24
  • kkud
    16 Sep 2012, 12:52
    ну наче не все так погано

    але для американця, який має 20ть кредитів важлива лише абсолютна сума заробітку - а в ІТ вона далеко не найвища
  • kkud
    16 Sep 2012, 12:50
    у нас такі позиції займають китайці, місцеві янкі в фотошопі логотипчики малюють
  • kkud
    16 Sep 2012, 04:57
    то есть айти в штатах не одна из прибыльных профессий?
Powered by LiveJournal.com
Designed by Akiko Kurono
Image