|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Vladimir Butenko 2:5020/400 01 Feb 2001 22:38:05 To : All Subject : Re: 2 процессора.... -------------------------------------------------------------------------------- Eugene B. Berdnikov <berd@desert.ihep.su> wrote in message news:644a59.4il.ln@elf.ihep.su... > Vladimir Butenko <butenko@stalker.com> wrote: > >> MT> Раз уж разговор перешел в это русло, то на сколько хорошо в linux'е > >> MT> реализованы fork()'и? Лучше, чем треды или также? > >> > >> Так же. Собственно, там и то и другое примерно через одно место > >> делается. > VB> > VB> Ага. При этом линухостроители забыли, что у процессов есть немножко > VB> больше атрибутов, чем ВирМем и файл-дескрипторы. > VB> > VB> В результате поменять, например, euid али eguid на Линухе нельзя. > VB> То есть seteuid есть, но меняет он euid у данного треда только, а не у > VB> процесса. > > А с какой стати тред должен менять euid родителя? Ссылку, плиз. Какого, блин, родителя? Hадо поменять uid ПРОЦЕССА. А в Линухе - из-за реализации у КАЖДОГО треда ОДHОГО процесса могут быть свои, несвязанные друг с другом euid, uid, setuid, и так далее. Hу, "забыли". > VB> Вот такие там пироги, в этих люнюхах %-((. Поправить, как понятно, раз > VB> плюнуть: > VB> вынести эти дескрипторы в отдельную структуру, а в описателе ЛИHУХHОГО > VB> процесса - не путать с настоящим - хранить не uid/gid, а ссылку на > VB> структурку > VB> (как уже сделано с таблицей файл-дескрипторов и памяти). > > И нахрена? Да так, ради мелочи - чтобы работало. А пока у меня Линух имеет атрибут - "система, не имеющая операций setuid". Потому как они в ней не работают. Для малтитредовых программ. А других у меня нет. Вова. > Eugene Berdnikov --- ifmail v.2.15dev5 * Origin: Gamma NNTP server Moscow Russia (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/759134bf45f5.html, оценка из 5, голосов 10
|