The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Разработчики из Google предложили разработать свою libc для ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от opennews (??), 26-Июн-19, 13:37 
Один из разработчиков из компании Google поднял (http://lists.llvm.org/pipermail/llvm-dev/2019-June/133269.html) в списке рассылки LLVM тему разработки многоплатформенной стандартной Си-библиотеки (Libc) в рамках проекта LLVM. По ряду причин Google не устраивают текущие libc (glibc, musl) и компания на пути к разработке новой реализации, которую предлагается развивать в рамках проекта LLVM.


Наработки LLVM последнее время используются в качестве основы для построения сборочного инструментария Google. Основной идеей является то, что если Google уже начал развивать свою libc, то почему бы ему сразу не развивать свою систему в составе LLVM, который уже развивает свою стандартную билиотеку для С++ (Libc++), но не имеет аналогичной стандартной библиотеки для Си (Libc).

Разработку планируется вести поэтапно, постепенно наращивая функциональность. Первые варианты предлагается оформить в виде прослойки между приложением и системной Libc, из которой будут заимствоваться ещё не реализованные возможности. После достижения определённого уровня в функциональности новая Libc сможет применяться в качестве полной замены системной Libc. Начать планируется с поддержки архитектуры  x86-64, Linux и статического связывания (динамическая загрузка, компоновка и дополнительные архитектуры будут реализованы во вторую очередь).

Проект пока на начальной стадии развития, но уже определены базовые цели:

-  Модульность и развитие в соответствии с философией поставки гранулированной библиотеки,  а не монолитного набора;

-  Поддержка статического связывания в режимах с PIE (https://en.wikipedia.org/wiki/Position-independent_code#PIE) (Position-independent executables) и без PIE. Предоставление CRT (C runtime) и загрузчика PIE для статически связываемых исполняемых файлов;

-  Поддержка большей части функций стандартной Си-библиотеки с дополнениями POSIX и некоторыми специфичными для систем расширениями, востребованными в существующих приложениях;
-  Осторожное отношение к специфичным для производителей расширениям и их добавление только при необходимости. В отношении поддержки сторонних расширений предлагается применять подход проектов Clang и libc++;

-  Использование образцовых практик в разработке с использованием инструментария LLVM, таких как применение  sanitizer и fuzzing-тестирования с самого начала.

Один из активных разработчиков LLVM указал (https://lists.llvm.org/pipermail/llvm-dev/2019-June/133282.html), что поставка libc в составе инструментария LLVM не лишены смысла, но обычно при подобной  необходимости используют библиотеку musl, которая качественно написана, поддерживает различные архитектуры и предоставляет необходимую функциональность, в том числе поддерживает динамическое связывание. Оправданным может быть встраивание musl в LLVM и развитие его как синхронизированного с основным проектом форка.


Своё мнение также выразил (http://lists.llvm.org/pipermail/llvm-dev/2019-June/133308.html) автор проекта Musl, который попытался аргументировать почему предложение Google и включение Libc в поставку LLVM являются очень плохими идеями:


-  Разработка и сопровождение корректной, совместимой и высококачественной Libc является очень трудной задачей. Проблема не в объёме кода, а в обеспечении корректного поведения и трудностях с реализацией интерфейсов с учётом огромного пласта когда-либо написанных приложений на С/C++, а также приложений на других языках, runtime которых использует Libc. Подход в лоб без учёта нюансов лишь приведёт к тому, что многие существующие программы не смогут работать с Libc, но тогда такой проект не будет интересен потребителям.

-  Корпоративная разработка может испорить Libc, но протолкнуть для широкого использования, итогом чего станет необходимость добавления хаков для обеспечения совместимости в приложениях.  Разработка под эгидой корпоративного открытого проекта  будет тянуть одеяло в сторону потребностей и решений  компании, в ущерб интересов сообщества. Например, в случае выявления проблемы, которая вызвана ошибкой в другой своей программе, в подконтрольной разработке проще обеспечить совместимость Libc с этой ошибкой, чем исправить саму ошибку. Apple использует для этих целей форк BSD libc, а Google применяет в Fuchsia  форк musl. Опыт разработчика musl готовит то том, что с ним связывались в основном юристы для уточнения вопросов лицензирования, но не никогда не обращались для уточнения технических деталей перед внесением в свои ответвления бесполезных и нарушающих работу изменений.

-  Отсутствие монокультуры при разработке libc и ориентация на развиваемые на основе достижения консенсуса стандарты, вместо единоличного управления, что мотивирует разработчиков прикладных приложений использовать стандарты, а не привязываться к конкретным реализациям. Именно поэтому автор musl против включения его библиотеки в состав LLVM, как и против разработки libc в рамках LLVM, так как в этом случае утрачивается независимый характер libc и определённая реализация становится решением первого класса для LLVM, а все остальные второго.

URL: https://news.ycombinator.com/item?id=20280487
Новость: https://www.opennet.ru/opennews/art.shtml?num=50970

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


2. "Разработчики из Google предложили разработать свою libc для ..."  +24 +/
Сообщение от Аноним (2), 26-Июн-19, 13:43 
Rich Felker дело говорит. Я думаю, к его мнению многие прислушаются.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

14. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Дон Ягон (ok), 26-Июн-19, 14:22 
> Rich Felker дело говорит.

Безусловно.

> Я думаю, к его мнению многие прислушаются.

Хотелось бы, но совсем не удивлюсь, если не прислушаются.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

72. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (72), 26-Июн-19, 22:33 
> Я думаю, к его мнению многие прислушаются.

Многие, но не Google.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

129. "Разработчики из Google предложили разработать свою libc для ..."  –2 +/
Сообщение от кккк (?), 28-Июн-19, 09:33 
>Многие, но не Google.

Ну и бох с ними - пусть пишут свой 101 велосипед, только она будет вне LLVM.

Ответить | Правка | ^ к родителю #72 | Наверх | Cообщить модератору

3. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (3), 26-Июн-19, 13:45 
У них же вроде и так есть Bionic.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Elv (?), 26-Июн-19, 13:56 
Она, по-моему, только часть Android. Тут же речь идёт про LLVM в целом...
Да и честно говоря лично у меня были немалые трудности при использовании Bionic после долгой работы с glibc, хотя там имела место привычка юзать _np функции из glibc.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

4. "Разработчики из Google предложили разработать свою libc для ..."  +6 +/
Сообщение от Иван (??), 26-Июн-19, 13:52 
Ага со сливом всего проходящего через либу на google.com
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Разработчики из Google предложили разработать свою libc для ..."  +18 +/
Сообщение от Аноним (5), 26-Июн-19, 13:54 
Браузера им мало, ещё и libc хотят монополизировать?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Разработчики из Google предложили разработать свою libc для ..."  +18 +/
Сообщение от llolik (ok), 26-Июн-19, 13:59 
Они хотят свой особый libc, в который они могут вносить свои правки ни с кем не считаясь.

libc (да и musl, в принципе, тоже, т.к. обещает совместимость) штука очень консервативная, ибо фундамент, и чтобы в ней что-то менять нужны очень веские основания и консенсус всех участников разработки. Гуглу это не нравится.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

125. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (125), 28-Июн-19, 01:39 
> чтобы в ней что-то менять нужны очень веские основания и консенсус всех участников разработки

Ясен пень, т.к. спецификацию на libc делают не разработчики libc, она даётся из вне и должна работать так как описано в стандарте. Иначе такая libc не нужна. Это вам не IE6, где можно быстренько поправить скриптик в блокноте.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

76. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (76), 27-Июн-19, 00:55 
>Браузера им мало, ещё и libc хотят монополизировать?

Ещё мой дед говаривал мудрые поговорки, мало чего помю, но вроде звучали они как-то так:
-Не можешь победить, возглавь!
-Если за дело взялся Гугл, жди беды!
-Бойтесь Гуглайцев, дары приносящих...

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

80. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от EnemyOfDemocracy (?), 27-Июн-19, 02:52 
О Гугле хорошо или за остальное забанят ваще везде.
Ответить | Правка | ^ к родителю #76 | Наверх | Cообщить модератору

142. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (-), 02-Июл-19, 18:24 
Я пользуюсь Firefox
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "Разработчики из Google предложили разработать свою libc для ..."  +22 +/
Сообщение от Аноним (6), 26-Июн-19, 13:54 
Я не одобряю увеличение влияние гугла. Отказать!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

123. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Голос разума (?), 27-Июн-19, 22:03 
Исполнено. Гуглу отказано. Спасибо за написанное вами здесь, не одобрительное сообщение.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

9. "Разработчики из Google предложили разработать свою libc для ..."  –2 +/
Сообщение от Георгийemail (??), 26-Июн-19, 14:08 
Почему не форкнуть и не рефакторнуть musl, если уж на то пошло.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

11. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Георгийemail (??), 26-Июн-19, 14:10 
А, понял. Им проще форкнуть Bionic.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

27. "Разработчики из Google предложили разработать свою libc для ..."  +4 +/
Сообщение от Аноним (27), 26-Июн-19, 14:45 
А почему бы им просто не пойти в попу?
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

39. "Разработчики из Google предложили разработать свою libc для ..."  +4 +/
Сообщение от Аноним (39), 26-Июн-19, 16:19 
Вы там аккуратнее с предложениями, они ведь могут и выполнить.
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

30. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от НяшМяш (ok), 26-Июн-19, 15:08 
В тексте и так написано, что гугл форкнул musl. Все, кто когда-нибудь работал с Android NDK, знают, какой там творится ад.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

40. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Elv (?), 26-Июн-19, 16:22 
Вот как раз недавно пришлось работать с ним, поддерживаю... Сама по себе Bionic тоже далеко не торт.
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

10. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Аноним (10), 26-Июн-19, 14:10 
>По ряду причин Google не устраивают текущие libc

Нужно больше зондов! И чтоб подлиннее!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

66. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Андрей (??), 26-Июн-19, 19:12 
Без объяснения этого ряда причин звучит просто как NIH.
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

15. "Разработчики из Google предложили разработать свою libc для ..."  +3 +/
Сообщение от Аноним (-), 26-Июн-19, 14:22 
Кстати поиск гугла сильно хуже чем 10 лет назад... с чего бы... может, мало велосипедов написано...
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

17. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (17), 26-Июн-19, 14:28 
Ты точно яндекс не видел?
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

20. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (-), 26-Июн-19, 14:30 
Он заблочен... а что с ним? Он лучше?
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

22. "Разработчики из Google предложили разработать свою libc для ..."  –2 +/
Сообщение от Аноним (22), 26-Июн-19, 14:34 
однако, да, музыку яндекс ищет лучше...
понимаю, что пиратсво плохо, но еще хуже когда нет свободы.
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

26. "Разработчики из Google предложили разработать свою libc для ..."  +11 +/
Сообщение от Дон Ягон (ok), 26-Июн-19, 14:45 
> что пиратсво плохо

Пиратство, это когда ты продаёшь не лицензионные копии.
И плохо это только потому, что какой-то левый тип получает деньги ни за что.

А скачивать музыку из сети, положив писюн на "правообладателей" - это хорошо, нравственно и правильно.

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

33. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (33), 26-Июн-19, 15:47 
> И плохо это только потому, что какой-то левый тип получает деньги ни за что.

А можете внятно объяснить, почему плохо, когда кто-то получает халявные деньги???

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

35. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Andrey Mitrofanov_N0 (??), 26-Июн-19, 15:57 
>> И плохо это только потому, что какой-то левый тип получает деньги ни за что.
> А можете внятно объяснить, почему плохо, когда кто-то получает халявные деньги???

Мама с папой говорили, что деньги надо -- за работу.

А кода не работая - деньги....
....невидимая рука рынка творит сплошь какую-то фигню.

Вот, на это наше АйТи взгляните.  Видите?!

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

37. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Дон Ягон (ok), 26-Июн-19, 16:06 
>> И плохо это только потому, что какой-то левый тип получает деньги ни за что.
> А можете внятно объяснить, почему плохо, когда кто-то получает халявные деньги???

Для кого плохо? Для того, кто получает - это, безусловно, хорошо.
Для правообладателей плохо, потому что деньги платят не им. Но их не очень-то и жалко.
Для тех, кто, собственно, пришёл за музыкой (ну или чем-то ещё - не суть) это плохо потому что надо платить. Причём, не музыканту, не "правообладателю" (который хотя бы формально при делах), а кому-то совершенно левому.
В мире, где примерно всё скачивается с торрентов вариант как с правообладателем, так и с пиратом слегка идиотский и финансировать что тех, что других незачем. Единственное, в случае с пиратом немного больше лицемерия. Правообладатель изначально преподносит себя как жадный кондом-вредитель, а пират наверняка строит из себя борцуна за свободу.

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

78. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (76), 27-Июн-19, 01:33 
>Для тех, кто, собственно, пришёл за музыкой (ну или чем-то
>ещё - не суть) это плохо потому что надо платить. Причём, не музыканту,
>не "правообладателю" (который хотя бы формально при делах),
>а кому-то совершенно левому.

А можно выстроить такие отношения, когда вы поддерживаете копейкой непосредственно своего любимого музыканта, пользоваться разными инструментами, типа прямых донатов, патреонов, или же не совсем напрямую, типа Flattr, если к подобному стилю больше душа лежит, было бы желание! Когда музыканты и прочие создатели контента увидят, что получить таким образом можно гораздо больше и такие методы более продуктивны, они сами откажутся от кабальных контрактов со всякими паразитами-прилипалами, типа современных продюссеров и правообладателей, вот кто больше похожь на настоящих пиратов, грабит и отнимает то, что им не пренадлежит!

Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

114. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Андрей (??), 27-Июн-19, 15:07 
> Когда музыканты и прочие создатели контента увидят

Вот учёные давным давно с приходом Интернета получили такую возможность. Например, https://arxiv.org А всё равно давятся, даже платят(!) журналам, да при этом ещё и бесплатно рецензируют статьи коллег. Абсурд!

Ответить | Правка | ^ к родителю #78 | Наверх | Cообщить модератору

43. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от ыы (?), 26-Июн-19, 16:56 
> скачивать музыку из сети, положив писюн на "правообладателей" - это хорошо, нравственно и правильно.

При этом вы кладете его и на авторов музыки.

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

45. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Дон Ягон (ok), 26-Июн-19, 17:02 
>> скачивать музыку из сети, положив писюн на "правообладателей" - это хорошо, нравственно и правильно.
> При этом вы кладете его и на авторов музыки.

Значительное число пока ещё живых исполнителей, которых я слушаю, одобряют распространение музыки через сеть забесплатно. Или, по крайней мере, относятся к этому с пониманием.

Понравившимся исполнителям я могу так просто задонатить, посетить их концерт или купить лицензионный диск, в бОльшей степени ради оформления и для коллекции.

В любом случае не вижу смысла позволять им зарабатывать на копировании, стоимость которого равна нулю. Особенно, если их цель была заработать, а не высказаться (почти наверняка подобная музыка мне и не зайдёт в любом случае).

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

46. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от ыы (?), 26-Июн-19, 17:07 
>Значительное число пока ещё живых исполнителей, которых я слушаю, одобряют распространение музыки через сеть забесплатно.

Они одобряют воровство? Ну чтож.. нашли друг друга как говорится...

Есть исполнители, которые распространяют свою музыку сами. И никаких проблем с правообладателями.
А вот те, что сперва раскрутились за счет дяди, а потом заявили что дескать они не против что у дяди который дал им жизнь воруют - это как история с MySQL AB.

Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

49. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Дон Ягон (ok), 26-Июн-19, 17:26 
>>Значительное число пока ещё живых исполнителей, которых я слушаю, одобряют распространение музыки через сеть забесплатно.
> Они одобряют воровство? Ну чтож.. нашли друг друга как говорится...

Копирование не является воровством. Как бы я не презирал столлмана, в данном случае он прав, ибо тиражирует очевидную вещь.

> Есть исполнители, которые распространяют свою музыку сами. И никаких проблем с правообладателями.

Например, бесплатно через интернет, ага.

> А вот те, что сперва раскрутились за счет дяди, а потом заявили что дескать они не против что у дяди который дал им жизнь воруют - это как история с MySQL AB.

Открою тебе страшную тайну: дядя не дал им жизнь. Если, конечно, речь не о тупейшей коммерции. Подавляющее большинство групп слушают за их музыку, а на дядю-шакала-трупоеда всем наплевать.

Есть, конечно, странные примеры, типа металики, которая раскрутилась за счёт того, что их музыку бесплатно копировали и распространяли подпольно, а потом она включила копирастию 9000го уровня и даже напстер что ли засудила. Но как по мне, такие примеры - ещё один аргумент в пользу того, что я говорю, а не против.

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

74. "Разработчики из Google предложили разработать свою libc для ..."  +9 +/
Сообщение от Юрист (?), 26-Июн-19, 22:36 
> Пиратство, это когда ты продаёшь не лицензионные копии.

Пиратство — это когда ты нападаешь на морское или речное судно в целях завладения чужим имуществом с применением насилия либо с угрозой его применения.

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

96. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от соседemail (?), 27-Июн-19, 10:44 
Согласен и пиратство и кража - это когда у кого-то что-то отнимают, а не копируют. Пираством Поднебесная занимается на государственном уровне  так что сказки про "воровство" и "пиратсво" в сфере IT оставьте полным отморозкам, жаждущих денег за их "гениальные" произведения и мысли.
Ответить | Правка | ^ к родителю #74 | Наверх | Cообщить модератору

100. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Andrey Mitrofanov_N0 (??), 27-Июн-19, 10:59 
>>  нападаешь на морское или речное судно в целях завладения чужим
> Согласен и пиратство и кража - это когда у кого-то что-то отнимают,
> а не копируют. Пираством Поднебесная занимается на государственном уровне  так

Вот ты гений-то!  Браво.  Специальный олимпиец.

Ответить | Правка | ^ к родителю #96 | Наверх | Cообщить модератору

50. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Аноним84701 (ok), 26-Июн-19, 17:27 
> Кстати поиск гугла сильно хуже чем 10 лет назад... с чего бы...

Поиск хуже, чем еще пару лет назад.
Особенно заметно стало после недавней (для меня - хз насколько у гугля это уже "индивидуализированно") модернизации интерфейса и (особенно) в "безЖСном" режиме, где уже вообще не выставить никаких фильтров (менюшку убрали) плюс оно теперь не показывает "нет результатов, увы" или "вот 2 результата по точному запросу, а вот отсюда и далее уже приблизительно", а просто показывает что-то типа "ищем не там где потерали, а за углом, где есть фонарь!".


Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

120. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (120), 27-Июн-19, 18:36 
вот это бесит, плюсы и кавычки уже пару лет не работают
Ответить | Правка | ^ к родителю #50 | Наверх | Cообщить модератору

53. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от гугель (?), 26-Июн-19, 17:57 
> Кстати поиск гугла сильно хуже чем 10 лет назад... с чего бы.

с того что десять лет назад ты так не усердствовал с защитой от трекинга

залогинься обратно в акаунт, заблудшая душа - и поиск будет просто великолепен.
особенно, если ты, как все, используешь наш, самый правильный, браузер.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

16. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Грусть (?), 26-Июн-19, 14:22 
> Начать планируется с поддержки архитектуры x86-64, Linux и статического связывания

На этом и закончат.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

19. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Аноним (17), 26-Июн-19, 14:30 
Раньше утверждал - чем меньше в компьютере мс, тем лучше. Теперь к компании добавился гугл.
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

21. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (-), 26-Июн-19, 14:31 
Корпорация Добра перешла на Темную сторону, Люк...
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

23. "Разработчики из Google предложили разработать свою libc для ..."  +7 +/
Сообщение от Аноним (22), 26-Июн-19, 14:36 
она там всегда и была. просто хорошо маскировалась :)
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

51. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Аноним84701 (ok), 26-Июн-19, 17:34 
> Корпорация Добра перешла на Темную сторону, Люк...

https://www.engadget.com › 2015/10/02 › alphabet-do-the-right-thing
> Alphabet replaces Google's 'Don't be evil' with 'Do the right thing'

На третий день Зоркий Глаз … ;)

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

97. "Разработчики из Google предложили разработать свою libc для ..."  –5 +/
Сообщение от Michael Shigorinemail (ok), 27-Июн-19, 10:52 
...вот только их "right" какое-то ультралевое...
Ответить | Правка | ^ к родителю #51 | Наверх | Cообщить модератору

81. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от хотел спросить (?), 27-Июн-19, 03:22 
mariadb тоже зло?

под винду точно работает лучше чем оракловский mysql

под centos еще ни разу не слетатал ни тот ни другой

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

18. "Разработчики из Google предложили разработать свою libc для ..."  +3 +/
Сообщение от Аноним (-), 26-Июн-19, 14:29 
А почему не на Go??
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

24. "Разработчики из Google предложили разработать свою libc для ..."  +3 +/
Сообщение от Аноним (24), 26-Июн-19, 14:42 
Так и запишем, нежелание использовать свободное по и открывать код.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

44. "Разработчики из Google предложили разработать свою libc для ..."  +3 +/
Сообщение от Аноним (44), 26-Июн-19, 16:56 
> и открывать код.

Давно BSD лицензия LLVM стала не открытой?

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

73. "Разработчики из Google предложили разработать свою libc для ..."  –2 +/
Сообщение от Аноним (73), 26-Июн-19, 22:35 
Но есть такие, как Гугель. Они-то могут одним движением руки превратить то, что под ней в закрытое.
Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

75. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (72), 26-Июн-19, 22:38 
Они могли бы просто не открывать исходники своей libc. Но их план более коварен: сначала открыть, а потом — взять и закрыть.
Ответить | Правка | ^ к родителю #73 | Наверх | Cообщить модератору

86. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (86), 27-Июн-19, 07:20 
много в этом поможет GPL если авторство будет принадлежать гуглу?
Ответить | Правка | ^ к родителю #73 | Наверх | Cообщить модератору

104. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (104), 27-Июн-19, 12:13 
Apache 2.0 License with LLVM exceptions.
Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

25. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Аноним (27), 26-Июн-19, 14:44 
Долой руки копирастов от свободного кода libc.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

28. "Разработчики из Google предложили разработать свою libc для ..."  +8 +/
Сообщение от Аноним (28), 26-Июн-19, 14:50 
Всё равно напишут своё. И потом все свои проекты прибьют гвоздями к этой новой libc, как уже прибивают к BoringSSL и clang. У Google хронический NIH синдром.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

31. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Аноним (31), 26-Июн-19, 15:27 
Попахвает https://ru.wikipedia.org/wiki/Embrace,_Extend,_and_Extinguish
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

54. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Какаянахренразница (ok), 26-Июн-19, 17:57 
И у меня сразу возникла та же мысль...
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

58. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от proninyaroslavemail (ok), 26-Июн-19, 18:30 
Он уже не попахивает а довольно сильно воняет. Причём уже длительно время. Начиная с гугла, заканчивая майкрософтом в последнее время (добрались таки).
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

59. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от proninyaroslavemail (ok), 26-Июн-19, 18:31 
А с учётом того что гугл почти монополист во многих областях (веб, десктопы [браузеры, electron], мобилки) то диктовать свои правила они не боятся совершенно.
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

34. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от An (??), 26-Июн-19, 15:53 
Наверно их все пошлют подальше и как было сказано выше на этом все закончится.  
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

41. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Аноним (41), 26-Июн-19, 16:49 
> Наверно их все пошлют

Согласен. Как уже послали с Андроидом, Хромом, Гмейлом...

Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору

98. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Michael Shigorinemail (ok), 27-Июн-19, 10:53 
Кстати, да -- осталось с остатков гмайла в качестве всеядного mx свалить.
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

115. "Разработчики из Google предложили разработать свою libc для ..."  +4 +/
Сообщение от товарищ майор (?), 27-Июн-19, 15:12 
правильно, на скрепную яндекс-почту!

Ответить | Правка | ^ к родителю #98 | Наверх | Cообщить модератору

38. "Разработчики из Google предложили разработать свою libc для ..."  +3 +/
Сообщение от Аноним (38), 26-Июн-19, 16:07 
Было бы не плохо что бы гугл запилил бы себе какой ни будь свой интернет и там и отдуплялся, барыжил бы выдачу, клики, пузырял бы пузыри информационные, кантачил бы с гнидой из амазона, решал бы вопросы с марком цукерфакером, а вот от интернетов бы шоб ручки свои шаловливые чтоб убрал под своё пропуканое одеяло, вот то было-б дело делов!...
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

55. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от гугель (?), 26-Июн-19, 17:59 
так мы вроде и того, уже ж?

В смысле, это ведь наш интернет, и в нем все примерно так и есть!

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

71. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от xm (ok), 26-Июн-19, 20:09 
На самом деле это ближе чем вы думаете. У них уже есть на пару с Facebook свой глобальный бэкбон.
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

103. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (103), 27-Июн-19, 11:22 
Этот ваш "гугл" напоминает наше правительство с роскомзапретами
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

126. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним3 (?), 28-Июн-19, 03:49 
согласен совсем о роскомзапретились)))
Ответить | Правка | ^ к родителю #103 | Наверх | Cообщить модератору

42. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от anonymous (??), 26-Июн-19, 16:54 
> Подход в лоб без учёта нюансов лишь приведёт к тому, что многие существующие программы не смогут работать с Libc, но тогда такой проект не будет интересен потребителям.

Ну тогда это шанс. Корпорации в общем и гугл в частности - это настолько крупные потребители, что они могут забить на интересы прочих мелких потребителей. И наконец-то выпустят libc который работает по стандартам, а не по принципу обратной совместимости костылей. И если разработчик отказывается следовать стандарту, и его программа падает - тем хуже для разработчика, гуглу это что слону дробинка.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

56. "Разработчики из Google предложили разработать свою libc для ..."  +4 +/
Сообщение от гугель (?), 26-Июн-19, 17:59 
а стандартами будет то, что мы укажем. Костыли-не костыли - жрать что дали и не вякать!

Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

47. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Аноним (47), 26-Июн-19, 17:16 
И кто-то ругает до сих пор MS? Последние хоть не паразитировали на открытом коде. Просто пишут закрытый/открытый код как им хочется.

Если LLVM прогнется, то пошли они в лес. Кто-то так или иначе форкнет как OpenLLVM или LibreLLVM. Проверено сообществом.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

61. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от proninyaroslavemail (ok), 26-Июн-19, 18:37 
Майкрософт со временем тоже начнёт свою паразитарную деятельность в опенсорсе/свободном ПО (WSL и прочие ништяки уже на подходе). А по LLVM Столлман уже давно выразил свою позицию и не считает его свободным (поскольку лицензия не копилефт). И творить с LLVM могут что угодно, не считаясь с остальными.
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

79. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Wilem (?), 27-Июн-19, 02:23 
Майкрософт уже внезапно главный контрибьютор в экосистему раста, по объему кода если правильно помню, да и сам actix — ключевой фреймворк. И WSL — это посто-таки подарок для пользователей винды, мс в этом большие молодцы.
Ответить | Правка | ^ к родителю #61 | Наверх | Cообщить модератору

99. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от proninyaroslavemail (ok), 27-Июн-19, 10:55 
Ну гугл тоже активный участник (например в ядре), что это меняет?
Ответить | Правка | ^ к родителю #79 | Наверх | Cообщить модератору

101. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Andrey Mitrofanov_N0 (??), 27-Июн-19, 11:04 
> Ну гугл тоже активный участник (например в ядре), что это меняет?

Это значит, что ему нужно быть скромнее, меньше активничать.

А что?....

Ответить | Правка | ^ к родителю #99 | Наверх | Cообщить модератору

48. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Аноним (48), 26-Июн-19, 17:22 
Право на форк. Ответ рабочего класса буржуям. Гугл стремится к монополии и контролю. Ну и как вам живется при капитализме, товарищи? ( В.И. Ленин).
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

62. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (62), 26-Июн-19, 18:45 
Действительно, КПСС быстро бы запретили всё это. Гугл был бы быстро национализирован, а его топ менеджмент — раскулачен и сослан в ГУЛАГ. Только код писать бы некому было.
Ответить | Правка | ^ к родителю #48 | Наверх | Cообщить модератору

94. "Разработчики из Google предложили разработать свою libc для ..."  +3 +/
Сообщение от 1 (??), 27-Июн-19, 10:13 
топменеджмент научать в ГУЛАГ-е писать код.

Совсем чтоль без головы ? Где код, а где топменеджмент ?

Ответить | Правка | ^ к родителю #62 | Наверх | Cообщить модератору

105. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от pda (?), 27-Июн-19, 12:26 
Шарашка - как решение проблемы!
Ответить | Правка | ^ к родителю #62 | Наверх | Cообщить модератору

106. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Аноним (106), 27-Июн-19, 12:32 
Вы все страшилки которые навыдумывали собирали в одну кучу? Почему ещё не добавили передача сотрудниц гугла в общее пользование, программерские трудодни, гонения по нац^W и^W рел^W признаку симпатии к ОС. Ну и прочие перестроечные байки из журнала огонек.
Ответить | Правка | ^ к родителю #62 | Наверх | Cообщить модератору

52. "Разработчики из Google предложили разработать свою libc для ..."  +5 +/
Сообщение от Ordu (ok), 26-Июн-19, 17:47 
Это, конечно, всё хорошо, но где объяснение причин для собственной libc? Заявления типа "у нас в гугле возникают проблемы с использованием glibc" как-то не выглядят особо убедительно. Какую конкретно проблему решит новая реализация libc?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

65. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (65), 26-Июн-19, 18:50 
>Какую конкретно проблему решит новая реализация libc?

Как я понял из письма, они хотят разбиение libc на мелкие компоненты и статическую линковку. В последнем случае glibc отпадает, потому что статическая линковка там нормально не поддерживается. Чем им musl не угодила, я не знаю.

Ответить | Правка | ^ к родителю #52 | Наверх | Cообщить модератору

68. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Ordu (ok), 26-Июн-19, 19:19 
>>Какую конкретно проблему решит новая реализация libc?
> Как я понял из письма, они хотят разбиение libc на мелкие компоненты
> и статическую линковку. В последнем случае glibc отпадает, потому что статическая
> линковка там нормально не поддерживается. Чем им musl не угодила, я
> не знаю.

Да, для меня это тоже выглядит острым приступом NiH синдрома.

Ответить | Правка | ^ к родителю #65 | Наверх | Cообщить модератору

130. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (130), 28-Июн-19, 20:07 
>glibc отпадает, потому что статическая линковка там нормально не поддерживается

Stop reopening

Ответить | Правка | ^ к родителю #65 | Наверх | Cообщить модератору

57. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (57), 26-Июн-19, 17:59 
Есть 4 компонента кретичные для безопасности ОС:

Ядро ОС Linux, компилятор С gcc, стандартная библиотека glibc и набор утилит binutils.

Власть Google, или другой монополии над любой из них допускать нельзя!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

63. "Разработчики из Google предложили разработать свою libc для ..."  +7 +/
Сообщение от Аноним (62), 26-Июн-19, 18:46 
>Есть 4 компонента кретичные для безопасности ОС

Кретичные — это ведь от слова кретинизм, да?

Ответить | Правка | ^ к родителю #57 | Наверх | Cообщить модератору

70. "Разработчики из Google предложили разработать свою libc для ..."  –2 +/
Сообщение от Аноним (57), 26-Июн-19, 19:26 
Ну не надо по себе судить, я от слова креативность наверно "е" взял. ;)
Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

82. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от хотел спросить (?), 27-Июн-19, 03:27 
это потому что кре... ативный ты )))
Ответить | Правка | ^ к родителю #70 | Наверх | Cообщить модератору

67. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от анонн (?), 26-Июн-19, 19:17 
> Есть 4 компонента кретичные для безопасности ОС:
> Ядро ОС Linux, компилятор С gcc, стандартная библиотека glibc и набор утилит  binutils.

Всегда подозревал, что HardenedBSD на самом деле дырявое реш3то!


Ответить | Правка | ^ к родителю #57 | Наверх | Cообщить модератору

69. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (57), 26-Июн-19, 19:24 
Имел в ввиду 4 компонента для *NIX. А для примера привёл назван е компонент с GNU/Linux.

1. Ядро ОС
2. Компилятор
3. Системная библиотека
4. Базовые системные утылиты

Если школу или кому другому в них удастся засунуть закладки - получит контроль над системой. И защититься не получится.

Ответить | Правка | ^ к родителю #67 | Наверх | Cообщить модератору

60. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (60), 26-Июн-19, 18:36 
Благодарю за перевод и возможные дополнения
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

77. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Joe B. (?), 27-Июн-19, 01:10 
А потом они форкнут LLVM
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

121. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (121), 27-Июн-19, 18:59 
Сначала напишут кучу кода, опубликуют его на весь мир под пермиссивной лицензией, а затем форкнут. Хитрый план, не так ли?
Ответить | Правка | ^ к родителю #77 | Наверх | Cообщить модератору

84. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (84), 27-Июн-19, 04:31 
как вам /lib/libmsvcrt.so.1.0.0 от Microsoft?)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

87. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от anonus (?), 27-Июн-19, 09:07 
Полна фигня. Вот для винды бы лучше и сделали нормальную libc.
Ответить | Правка | ^ к родителю #84 | Наверх | Cообщить модератору

88. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Ilya Indigo (ok), 27-Июн-19, 09:19 
Очередной NIH от Google.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

89. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Andrey Mitrofanov_N0 (??), 27-Июн-19, 09:27 
> Очередной NIH от Google.

Гугль прижимающийся своими НИХом к эпплову НИХу.
К кому только не прижмутся -- лишь бы не GPLv3+.
пох-нах оценит!P-D

Ответить | Правка | ^ к родителю #88 | Наверх | Cообщить модератору

90. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Ilya Indigo (ok), 27-Июн-19, 09:34 
>> Очередной NIH от Google.
> Гугль прижимающийся своими НИХом к эпплову НИХу.
> К кому только не прижмутся -- лишь бы не GPLv3+.
> пох-нах оценит!P-D

Яблочный NIH умеет шейдеры компилировать, от него есть реальная польза для Mesa!

Ответить | Правка | ^ к родителю #89 | Наверх | Cообщить модератору

91. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Andrey Mitrofanov_N0 (??), 27-Июн-19, 09:41 
>>> Очередной NIH от Google.
>> Гугль прижимающийся своими НИХом к эпплову НИХу.
>> К кому только не прижмутся -- лишь бы не GPLv3+.
>> пох-нах оценит!P-D
> Яблочный NIH умеет шейдеры

Столмановский тоже вродь научили.  Почти.  

Но это никому не интересно, согласен.

Противно даже!  " Нормальному мужику такое впадлу предлагать. "

>компилировать, от него есть реальная польза для Mesa!

Ответить | Правка | ^ к родителю #90 | Наверх | Cообщить модератору

92. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Аноним (92), 27-Июн-19, 10:05 
Я изучал стандартную библиотеку языка С:
glibс - это треш, в котором черт ногу сломит (макрос на макросе) - очень сложно разобраться и понять что там происходит. Видимо девиз тех, кто это писал такой: Смотрите как мы можем, смотрите какие мы умные, а вы нет!
musl - они думают, что они лучше glibc, но по факту не так уж и сильно. Более того, это ещё один пример того как НЕ надо писать на языке Си. Ребята очнитесь вы там, вы пишите код для людей, а не ебу** заклинания для компилятора.
bsd libc (в openbsd) - по сути такое же гавно (в плане стиля кода), как и
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

93. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Аноним (92), 27-Июн-19, 10:11 
Продолжение:
остальные - не пишите так код!
Р/S IMHO Лично мне куда больше нравится стиль в книге The Standard C Library (реализация ANSI C library)
Ответить | Правка | ^ к родителю #92 | Наверх | Cообщить модератору

95. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 27-Июн-19, 10:39 
Вот вам пример из исходников:
https://git.musl-libc.org/cgit/musl/tree/src/string/strncat.c
А теперь, кто внимательный, видите здесь, что-то странное (лишнее)?
Ответить | Правка | ^ к родителю #93 | Наверх | Cообщить модератору

102. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Andrey Mitrofanov_N0 (??), 27-Июн-19, 11:22 
> Вот вам пример из исходников:
> https://git.musl-libc.org/cgit/musl/tree/src/string/strncat.c
> А теперь, кто внимательный, видите здесь, что-то странное (лишнее)?

Из n надь вычесть strlen(s).  И единицу.   И проверить underflow при том.  

Я выиграл?  Не отвечайте.  Я знаю, что проиграл -- "программирование" не моё.

Ответить | Правка | ^ к родителю #95 | Наверх | Cообщить модератору

108. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от solardiz (ok), 27-Июн-19, 13:03 
Не вижу. Если Вы видите, сообщите, пожалуйста, что именно там "странное (лишнее)".
Ответить | Правка | ^ к родителю #95 | Наверх | Cообщить модератору

109. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 27-Июн-19, 13:41 
Нужно писать так:
*d = 0;
вместо этого:
*d++ = 0;
В данном случае, это никак не отражается на том, как ведёт себя данный код, однако согласитесь что это не есть хорошо!

P\S
Опять же это лишний раз показывает то, что код должен быть написан в первую очередь для людей, так чтобы даже скажем условный студент 1-3 курса смог без труда разобраться.
Например, я бы написал это так:
char *strncat(char *to, const char *from, size_t n)
{
    char *ret;
    ret = to;

    for (; *to != '\0'; ++to)
        /*nothing*/;

    for (; n != 0 && *from != '\0'; --n, ++from, ++to)
        *to = *from;

    *to = '\0';
    return ret;
}
Современные компиляторы (в большинстве случаев) прекрасно справляются с оптимизацией, так что не надо писать заумные вещи и показывать всем какой вы умный (В Си и без этого можно легко выстрелить себе в ногу)

Ответить | Правка | ^ к родителю #108 | Наверх | Cообщить модератору

111. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от solardiz (ok), 27-Июн-19, 14:13 
Спасибо. Насчет лишнего "++" согласен что нагляднее без него, скажу Rich'у. В остальном по наглядности кода мне не очевидно чья версия лучше.
Ответить | Правка | ^ к родителю #109 | Наверх | Cообщить модератору

112. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 27-Июн-19, 14:24 
А вы попробуйте посмотреть на это с точки зрения неопытного Си программиста
Ответить | Правка | ^ к родителю #111 | Наверх | Cообщить модератору

113. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от letsmac (ok), 27-Июн-19, 14:53 
А зачем неопытному Си программисту лезть в ДНК?
Ответить | Правка | ^ к родителю #112 | Наверх | Cообщить модератору

117. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 27-Июн-19, 17:36 
Наверное затем, чтобы понять как устроено ДНК и тем самым стать более опытным как можно раньше, а не смотреть на всё это сквозь призму черного ящика и делать глупые ошибки.
Ответить | Правка | ^ к родителю #113 | Наверх | Cообщить модератору

135. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Ordu (ok), 29-Июн-19, 17:16 
Чтобы стать более опытным, надо смотреть в реальный код, а не в адаптированный для неопытных. Это так же как с иностранными языками -- читать адаптированные тексты имеет смысл лишь в первые полгода обучения.
Ответить | Правка | ^ к родителю #117 | Наверх | Cообщить модератору

137. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 30-Июн-19, 10:26 
Никто и не отрицает важность умения читать и понимать то что написали другие люди, и в случае если потребуется, уметь писать в таком же стиле, в рамках проекта игнорируя свои личные предпочтения.

"Реальный код" - это код который написан реальными людьми, так что любой код это реальный код!
Что на счёт "Хорошего кода", то тут у каждого свое представление о том что это значит.

Ответить | Правка | ^ к родителю #135 | Наверх | Cообщить модератору

138. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Ordu (ok), 30-Июн-19, 10:57 
> "Реальный код" - это код который написан реальными людьми, так что любой
> код это реальный код!

Как ты думаешь, если бы "реальный код" == "любой код", то зачем мне нужно было говорить прилагателное "реальный"? Явно ведь, что я хотел сказать что-то иное, а не то, что тебе хочется, так? Я верю в тебя, и тебе тоже следует поверить в себя: ты можешь понять, что именно я говорил, если подумаешь. Не сдавайся так быстро.

Ответить | Правка | ^ к родителю #137 | Наверх | Cообщить модератору

140. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 30-Июн-19, 12:37 
Я прекрасно вас понял!

Просто, то что вы назвали адаптированным кодом, прозвучало так, как-будто в реальных проектах так никто не пишет!

Ответить | Правка | ^ к родителю #138 | Наверх | Cообщить модератору

141. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Ordu (ok), 30-Июн-19, 13:09 
> Я прекрасно вас понял!
> Просто, то что вы назвали адаптированным кодом, прозвучало так, как-будто в реальных
> проектах так никто не пишет!

Пишут. Ещё и не так пишут. Бывает такой кошмар в коде, что сей пример на его фоне будет выглядеть совершенно безобидным.

Ответить | Правка | ^ к родителю #140 | Наверх | Cообщить модератору

116. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (116), 27-Июн-19, 15:27 
>показывать всем какой вы умный

Вот и не показывай.

strlen(d) из оригинала может быть заменен на специфический для платформы очень быстрый набор инструкций, а твой "for (; *to != '\0'; ++to)" (который на самом деле while(*to) to++;) - нет.

и откуда вы лезете с '\0' то? Впрочем, все эти размазывания присвоений на 3 строчки - явно карпарифный стандарт с галеры, где платят за количество строк кода. Можешь устариваться в гуголь, там такое любят.


Ответить | Правка | ^ к родителю #109 | Наверх | Cообщить модератору

118. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Аноним (92), 27-Июн-19, 18:14 
А вы забавный:)))

Я понял, Вы походу настолько суровы, что вместо NULL тоже везде пишете 0. Имена всех ваших переменных не длиннее одной буквы, а об оптимизации вы думаете ещё до того как получите хоть какой-то рабочий код.

Чтоже так тоже можно, но я предпочитаю думать о тех людях кто будет поддерживать код после меня, помня о том что возможно это буду я сам:))

ПС
А на счет '\0', и мой цикл for, ну что тут сказать, могу вам посоветовать почитать книгу:
The Practice of Programming (B.Kernighan and R.Pike)
И все претензии предъявлять этим уважаемым господам:))

Ответить | Правка | ^ к родителю #116 | Наверх | Cообщить модератору

132. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (132), 29-Июн-19, 11:39 
>strlen(d) из оригинала может быть заменен на специфический для платформы очень быстрый набор инструкций, а твой "for (; *to != '\0'; ++to)" (который на самом деле while(*to) to++;) - нет.

Дайте пример! Хочу увидеть где можно ускорить и без того простейший инкремент.

Ответить | Правка | ^ к родителю #116 | Наверх | Cообщить модератору

133. "Разработчики из Google предложили разработать свою libc для ..."  +2 +/
Сообщение от Аноним84701 (ok), 29-Июн-19, 12:49 
>>strlen(d) из оригинала может быть заменен на специфический для платформы очень быстрый набор инструкций, а твой "for (; *to != '\0'; ++to)" (который на самом деле while(*to) to++;) - нет.
> Дайте пример! Хочу увидеть где можно ускорить и без того простейший инкремент.

Например, обрабатывать не байтик за байтиком:
https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/i38...


L(1):   movl (%eax), %ecx       /* get word (= 4 bytes) in question */
  65         movl $0xfefefeff, %edx  /* magic value */
  66         addl %ecx, %edx         /* add the magic value to the word.  We get
  67                                    carry bits reported for each byte which
  68                                    is *not* 0 */
  69         jnc L(3)                /* highest byte is NUL => return pointer */
  70         xorl %ecx, %edx         /* (word+magic)^word */

Или вообще использовать SIMD:

https://www.strchr.com/strcmp_and_strlen_using_sse_4.2


; ==== strlen ====
strlen_sse42:
  ; ecx = string
  mov eax, -16
  mov edx, ecx
  pxor xmm0, xmm0

STRLEN_LOOP:
    add eax, 16
    PcmpIstrI xmm0, dqword[edx + eax], EQUAL_EACH
    jnz STRLEN_LOOP

  add eax, ecx
  ret

glibc
https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/x86...


L(loop):
174
175         addq    $64, %rax
176         cmpq    %rax, %r10
177         je      L(exit_end)
178
179         movdqa  (%rax), %xmm0
180         PMINU   16(%rax), %xmm0
181         PMINU   32(%rax), %xmm0
182         PMINU   48(%rax), %xmm0
183         PCMPEQ  %xmm3, %xmm0
184         pmovmskb        %xmm0, %edx
185         testl   %edx, %edx
186         jne     L(exit)
187         jmp     L(loop)

Ответить | Правка | ^ к родителю #132 | Наверх | Cообщить модератору

136. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (47), 29-Июн-19, 18:17 
Так или иначе везде циклы, я-то думал, что будет  что-то фантастическое в одну/две операции. Все равно за примеры спасибо.
Ответить | Правка | ^ к родителю #133 | Наверх | Cообщить модератору

131. "Разработчики из Google предложили разработать свою libc для ..."  +1 +/
Сообщение от Аноним (132), 29-Июн-19, 11:37 
Смешно.

Ваш for (; *to != '\0'; ++to) это strlen в упрощенном виде:
https://git.musl-libc.org/cgit/musl/tree/src/string/strlen.c

С точки зрения компилятора ваш код ничем не отличается от того, что в musl.

Итого, вы придрались к оформлению и к *d++ = 0, где инкремент может выпилить компилятор. Возникает вопрос зачем 100500 раз везде писать "for (; *to != '\0'; ++to)" вместо strlen? Вот это и есть дурной тон программирования. Другой вопрос почему strlen не сделан в виде макроса.

Ответить | Правка | ^ к родителю #109 | Наверх | Cообщить модератору

139. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (92), 30-Июн-19, 12:07 
>>>Ваш for (; *to != '\0'; ++to) это strlen в упрощенном виде:

В этом и весь смысл.
Вы всё равно должны учесть, что всё это рассчитано главный образом на компилятор gcc. (__GNUC__)

>>> С точки зрения компилятора ваш код ничем не отличается от того, что в musl.

Так в том и суть, если нет разницы зачем писать такие "заклинания". Покажите мне хоть одну книгу по языку Си, где так учат писать код.

>>>Итого, вы придрались к оформлению и к *d++ = 0, где инкремент может выпилить компилятор.

Именно такие ситуации, в конечном итоге, и приводят к логическим ошибкам в коде программы.
Игнорировать такое просто недопустимо!!!

>>>Возникает вопрос зачем 100500 раз везде писать "for (; *to != '\0'; ++to)" вместо strlen?

Потому что (в таких случаях):
если всё что вы делаете, так это двигаете указатель (чтобы затем использовать его) --> просто напишите цикл. В других случаях, при других обстоятельствах - я с вами полностью согласен!

>>>Другой вопрос почему strlen не сделан в виде макроса.

Потому что лучше написать функцию вместо макроса. Все современные компиляторы прекрасно разберутся сами и смогут избежать вызова функции.
С помощью макроса лучше писать только то, на что функция в принципе не способна.

Ответить | Правка | ^ к родителю #131 | Наверх | Cообщить модератору

110. "Разработчики из Google предложили разработать свою libc для ..."  –2 +/
Сообщение от Аноним (110), 27-Июн-19, 13:44 
>По ряду причин Google не устраивают текущие libc (glibc, musl) и компания на пути к разработке новой реализации

Non copyleft licenses are considered as permissive licenses, mostly because they allow creating derivative works under other license terms.
It is important to make a difference between Free software and Open source software. All Free Software is Open source Software, but not all Open source Software is considered as Free software.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

119. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (121), 27-Июн-19, 18:20 
>All Free Software is Open source Software, but not all Open source Software is considered as Free software.

ЛПП, см https://en.wikipedia.org/wiki/Comparison_of_free_and_open-so.... Есть экзотические лицензии, одобренные FSF и не одобренные OSI. При этом подавляющее большинство лицензий либо одобрены тем и другим, либо не одобрены тем и другим

Ответить | Правка | ^ к родителю #110 | Наверх | Cообщить модератору

122. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Аноним (122), 27-Июн-19, 19:51 
Просто FSF различает open и free software, а OSI — нет.
Ответить | Правка | ^ к родителю #119 | Наверх | Cообщить модератору

124. "Разработчики из Google предложили разработать свою libc для ..."  –1 +/
Сообщение от Андрей (??), 27-Июн-19, 23:23 
> одобренные FSF и не одобренные OSI

Не ожидал. Впрочем так же, как и то, что документация к gcc, флагманскому проекту FSF, является non-free в Debian.

Ответить | Правка | ^ к родителю #119 | Наверх | Cообщить модератору

134. "Разработчики из Google предложили разработать свою libc для ..."  +/
Сообщение от Аноним (-), 29-Июн-19, 15:46 
>Опыт разработчика musl говорит о том, что с ним связывались в основном юристы для уточнения вопросов лицензирования, но никогда не обращались для уточнения технических деталей перед внесением в свои ответвления бесполезных и нарушающих работу изменений.

Ну чё пацаны, похоже Гуглятина готовит фундамент для развития своей будущей проприетарной оси Chrome.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру