LINUX.ORG.RU

Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

 , , , ,


0

0

После довольно острой критики со стороны Линуса Торвальдса, Алан Кокс заявил, что не собирается больше работать над подсистемой TTY в Linux, так как сыт этим всем по горло.

Этому событию предшествовала очередная дискуссия «кривой userspace vs. кривое ядро» (Кокс отстаивал первую точку зрения), в ходе которой Линус заметил, что постоянно винить пользовательские программы в том, что ядро ломается, и предлагать починить их все вместо починки ядра — как минимум непорядочно и по-идиотски.

Ответ Алана Кокса на пришедшее некоторое время спустя письмо подтверждает, что он принял решение прекратить поддержку TTY на полном серьезе.

>>> С чего все началось

★★★★★

Проверено: maxcom ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> как теперь определить, что мы вычитали весь вывод дочернего процесса с pty?

Почему нельзя синхронизировать эти действия? Каким-нибудь флагом, например.

post-factum ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> в смысле сперва делалось send(..) а затем все висело в recv(...)?
> я никак не пойму, как такое возможно.


нее.. всё висело в процессе send() [до recv() дело недоходило]

> если это фича ядра, то линупс кагбэ непоправимое решето.


руки это мои кривые :-)

mkfifo ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>> как теперь определить, что мы вычитали весь вывод дочернего процесса с pty?

> Почему нельзя синхронизировать эти действия? Каким-нибудь флагом, например.

исключено, тогда прийдётся специально затачивать программы под такое взаимодействие

rudchenkos ()
Ответ на: Фоменко? от Camel

Re: Фоменко?

>Армия США не принимала участия в Киевской операции 1941 года! Учите полит.информацию.

Зато на Филиппинах, в частности Батаане и Коррехидоре -- принимала, там не 300 тысяч, поменьше народа было, но тоже немало.

Вот тут подробнее, если интересно: http://militera.lib.ru/h/mozheiko/03.html

kss ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> руки это мои кривые :-)

Даже при очень кривых руках всё должно было работать на TCP. Или у тебя был UDP?

tailgunner ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

TCP кажется был.... но очень смутно помню. давно было

и причом зависания при запуске экземпляров на одном компе -- были не стабильными, а в 5% случаев

mkfifo ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

линуксокопец?

mrxrrr ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Самое правильное разжёвывание материала. Однако emacs -решето. Каким образом кому-то могло придти в голову, что SIGCH даёт основания для close()? Не понимаю. FD отдельно, дети отдельно. Они что про буфера и не слыхали? Пока read не вернёт 0 файл не вычитан, что не понятного в posix написано? Никакой связи с сигналами там нет, хоть SIGKILL.

alx_me ★★☆ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Я не понимаю, что все развопились, ну будут патчи к сломанным программам. если ядро в дистре будет ниже 2.6.31 будут ставить KDE и Имакс без патчей. если 2.6.31 и выше, то с патчами, аки дети малые, как будто сами компиляете через ./configure && make && sudo make install.

linux4ever ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>завтра Вася Пупкин патч внесёт в ядро, от которого 90% софта отвалится, что, в весь софт костыли ставить будем?

>PS: терминалы - это конечно хорошо, но когда уже графика в ядре будет?


Махровый Vox Populi. Кто бы знал, как же он достал!

env ★★☆ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

А причем здесь ручная компиляция? Внесут мейнтейнеры генты патчи в портажи и вся проблема. Непонимаю криков некоторых людей.

linux4ever ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>FD отдельно, дети отдельно. Они что про буфера и не слыхали? Пока read не вернёт 0 файл не вычитан, что не понятного в posix написано?

имакс однопоточный, при этом с синхронным API. Представляю какие там пляски с бубном.

Absurd ★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Что, уже есть ответ на вопрос "Как пропатчить KDE4 под Linux?" или ещё нет?

iZEN ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>кадеешники форкнут ядро :)

Доделают KDE4 на Windows, начнут продавать, а потом скажут, что Linux для них неприбыльный рынок, больше не интересен и поэтому KDE теперь будет только под Windows.

mr_anonymous ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>Не знаю в какой позе придется прогнуться под Стивом Б. Чтобы это дело стало успешным.

Спокойно. С MS уже заключено соглашение. Эксперимент начался с Windows 7. :-)

mr_anonymous ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>жестко Линус его, не удивительно, что Алан обиделся

А если коллектив перднет в Линуса и все они уйдут доделывать Hurd?

Karapuz ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> А если коллектив перднет в Линуса и все они уйдут доделывать Hurd?

Тогда у нас будет самая GNU-шная и GPL-ная ОС.

vensder ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Скажите, это я что-то неравильно понял или вся возня из-за того что Кеды разломались еще больше? Спасибо.

mrxrrr ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> вся возня из-за того что Кеды разломались еще больше?

Вся возня из-за того, что Линус перестаёт понимать, что он делает.

post-factum ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Кокс уже не тот пошел.

Levinskij ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> Каким образом кому-то могло придти в голову, что SIGCH даёт основания для close()? Не понимаю.

SIGCLD послыается после завершения дочернего процесса, когда тот завершается и для всех дескрипторов уже вызван close. Такая вот связь, что непонятно?

tailgunner ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>SIGCLD послыается после завершения дочернего процесса, когда тот завершается и для всех дескрипторов уже вызван close. Такая вот связь, что непонятно?

А с чего это должно значить, что в буфере терминала не осталось данных?!

Nesk ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Какая драма

impfp ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> Это пруфлинк того, что в кдесу есть ошибка. О чем кстати и говорилось в ссылке выше на lwn.net

Пардон, _работающего_ к-десу. По принципам, известным 17 лет.

liksys ★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Интерестно что на стоп-линукс напишут.

Levinskij ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>Интерестно что на стоп-линукс напишут

А ничего не напишут. Прибежит куча троллей с лопатами, начнут срать кирпичами, и по неимении линукса закопают свое г*но.

NiggasLife ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Всю тему ниасилил.

Скажите, это та самая бага, которая не позволяет выловить нажатия ctrl+→/← в консоли? Я как-то извращался, принципа, по которому оно биты теряет, так и не понял.

/me сделал патч для mc, двигающий панельки на манер FAR, вот только пришлось вешать хоткеи на буквенные клавиши, что совершенно неудобно.

EmStudio ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>Что, уже есть ответ на вопрос "Как пропатчить KDE4 под Linux?" или ещё нет?

а че, в винде уже есть kdesu?

registrant ★★★★★ ()
Ответ на: Re: Один за всех и все за одного. от sign

Re: Один за всех и все за одного.

Вопрос стратегам. Понятно когда целая армия проводит операцию по спасению единственного солдата. Сложнее когда людей несколько (неудачный случай с посольством США в Иране), а сколько необходимо людей, чтобы закрыть прорваный противником фронт и спасти 300 тысяч? И самый главный вопрос - где их взять? Есть ли в мировой истории удачные случаи?

serchek ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Ну Линус, ну молодец!))) Миникс сплагиатил. Кокса подсидел. Так держать, наш человек!

LightDiver ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> Миникс сплагиатил

что именно Линус оттуда взял?

> Кокса подсидел


он хотел занять его место? :)

lester ★★★★ ()
Ответ на: Re: Один за всех и все за одного. от serchek

Re: Один за всех и все за одного.

>Понятно когда целая армия проводит операцию по спасению единственного солдата.

Я до этого думал, что солдат спасают только по тому, что их учеба ОЧЕНЬ дорого стоит... Например я слышал, что в России 1 пилот стоит 1kk $, а в пендосии в сотни раз дороже.

vadv ★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

у нас на форумах вантузятнеге ликуэ.

Но ничего, думаю, незаменимых людей нет, найдут знающего человека.

QUANTUM ()
Ответ на: Re: Один за всех и все за одного. от vadv

Re: Один за всех и все за одного.

> Например я слышал, что в России 1 пилот стоит 1kk $

пилот экстра-класса скорее ближе к 10M $ стоит - обучение + амортизация самолета + топливо + обслуживающий персонал + всю эту араву кормить надо.

VoDA ★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

Ну и при чем здесь 17 лет? Это что, показатель? Баги, с подпирающими их костылями могут жить и дольше, но от этого баги не перестают быть багами, а костыли - костылями.

CryAngel ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>> SIGCLD послыается после завершения дочернего процесса, когда тот завершается и для всех дескрипторов уже вызван close. Такая вот связь, что непонятно?

> А с чего это должно значить, что в буфере терминала не осталось данных?!

Вопрос был о связи close и SIGCHLD, я на него и ответил. Про "не осталось данных в буфере терминала" - SIGCHLD с этим никак не связан. Но емакс рассчитывает на совершенно противоположное - что после получения им SIGCHLD в буфере терминала _будут_ данные. И как раз этого не происходит IIUC (данные не успевают дойти от потомка к предку). Хотя, может, так и правильно - ну не успела система спланировать ldisc на исполнение.

tailgunner ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

>после получения им SIGCHLD в буфере терминала _будут_ данные. И как раз этого не происходит IIUC (данные не успевают дойти от потомка к предку)

Не понял. Что значит "данные не успевают"? А разве read не должен их дождаться?

legolegs ★★★★★ ()

Re: Алан Кокс больше не желает заниматься подсистемой TTY ядра Linux

> Что значит "данные не успевают"?

ВНЕЗАПНО ldisc планируется. Раньше такого вроде не было - наверное, следствие работы Алана.

> А разве read не должен их дождаться?

Емакс использует non-blocking read (нет, я не знаю, почему он так делает).

tailgunner ★★★★★ ()
Ответ на: Re: Один за всех и все за одного. от vadv

Re: Один за всех и все за одного.

> Я до этого думал, что солдат спасают только по тому, что их учеба ОЧЕНЬ дорого стоит.

Какое дико нелепое и навязанное современным модным мышлением мнение. Вы тоже жизнь мереете деньгами? Есть ещё нематериальные ценности - задумайтесь. Их материальное отображение - желание защищать интересы своей родины. Так как знают, что ежели что случится их не бросят, а помогут. Но как только каждый сам за себя - армия становится небоеспособной. В армии очень многое стоит на психологии и нематериальных ценностях. Вот яркий пример про траншеи. Раньше каждый солдат себе сам ямку отдельную капал - быстро и дёшево. После I мировой передумали. Почему? Психология.

alx_me ★★☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.