LINUX.ORG.RU

Отчёт о проверке безопасности открытого и проприетарного кода за 2011-ый год.

 , ,


0

3

Компания Coverity, лидер автоматизированного тестирования кода на предмет наличия ошибок и уязвимостей, предоставила отчёт, являющийся продуктом крупнейшего совместного частно-государственного проекта по аудиту исходных кодов открытого и проприетарного программного обеспечения. Отчёт содержит результаты анализа более 37 миллионов строк кода 45-ти наиболее активно развивающихся проектов с открытым исходным кодом, а также около 300 миллионов строк кода 41-го неназванного проприетарного ПО.

Ключевые моменты отчёта:

  • Средний размер открытого ПО составляет 832000 строк кода, при этом на 1000 строк кода было выявлено в среднем 0,45 дефектов.
  • Средний размер проприетарной программы составляет 7,5 млн строк кода, на 1000 строк кода приходится в среднем 0,64 дефекта.
  • В общем и целом для индустрии ПО этот показатель составляет 1,0 дефектов на 1000 строк кода.
  • Linux 2.6, PHP 5.3 и PostgreSQL 9.1 признаны открытым ПО с высоким качеством кода, их показатели средней дефективности кода составляют 0,62, 0,20 и 0,21 соответственно. Всего в Linux 2.6 была выявлена 4261 ошибка, из которых 1249 признаны очень опасными или критическими. В РНР 5.3 и PostgreSQL 9.1 эти показатели составляют 97/15 и 233/116 соответственно.
  • При сходных размерах качество проприетарного и открытого ПО находится примерно на одном уровне, так Linux 2.6, насчитывающий почти 7 млн строк кода (средний размер проприетарной программы составляет 7,5 млн строк кода), имеет показатель качества 0,62, что схоже со средним показателем качества проприетарного ПО - 0,64.

Было замечено, что открытые проекты очень активно реагируют на выявленные системой Coverity дефекты. Так, команда разработчиков BRL-CAD устранила более 1600 дефектов в течение 5 дней после того как авторы исследования уведомили разработчиков.

>>> Подробности



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

Срочно ядро Linux переписать на PHP, а файловую систему хранить в PostgreSQL

AiFiLTr0 ★★★★★
()

0,45 дефектов.
0,64 дефекта.
В общем и целом для индустрии ПО этот показатель составляет 1,0 дефектов

Я один насчитал ~0,55?

darkshvein ☆☆
()
Ответ на: комментарий от vurdalak

опередил))

Существует еще какой-то вид ПО с такими дикими багами

Журналистский быдлокод. От него даже вдоль добровольно делают.

darkshvein ☆☆
()

В конце 80-ых читал в одной книге по программированию, что по статистике на 10000 строк кода присутствует одна ошибка.

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

GluckMan ★★★
()

Linux 2.6, PHP 5.3 и PostgreSQL 9.1 признаны открытым ПО с высоким качеством кода, их показатели средней дефективности кода составляют 0,62, 0,20 и 0,21 соответственно.

А как там с показателем дефективности авторов?

dikiy ★★☆☆☆
()
Ответ на: комментарий от GluckMan

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

А ты попробуй пописать под ламповое говно мамонта, еще и на дуде заиграешь, инфа 100%.

baverman ★★★
()
Ответ на: комментарий от zenden

Как они нашли эти ошибки?

Компания занимается выпуском продуктов для статического анализа кода, которые стоят много-много убитых енотов.

//P.S. капча «political» какбэ намекает

anonymous
()
Ответ на: комментарий от GluckMan

В конце 80-ых читал в одной книге по программированию, что по статистике на 10000 строк кода присутствует одна ошибка.

Ссылка на туманный источник воспринимается как попытка вброса.

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

Объективно код стал сложнее. А верить можно и в «мир катится в СГ».

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

Потому что их было мало. Они и сейчас есть и их по-прежнему мало. И они занимаются тем чем надо: делают инструментарий для менее профессиональных программистов. Учёный не должен пилить очередной плеер.

Сейчас же уровень Индии и Китая - всё что надо для счастливой жизни корпораций и открытого ПО. План по валу, а вал по плану. И у нас уровень в этой профессии упал ниже плинтуса.

А в сосисках - соя, как страшно жить!

fragment
() автор топика
Ответ на: комментарий от IceAlchemist

То есть «мы нашли в линуксе 4261 ошибку, но мы не скажем где»?

Нет. Это делается для рекламы и сырой лог отработавшего анализатора могут послать разработчикам. На Хабрахабре есть товарищи, которые свой продукт с блюющими лошадьми (no offense to the avatar) так и пиарят.

//P.S. капча «through» одобряет.

anonymous
()
Ответ на: комментарий от Reset

проприетарное ПО в 99.99% случаев работает как ожидаешь

Согласен. Я от VS 2010 ожидал, что она будет тормозить и жрать память — она не обманула моих ожиданий.

buddhist ★★★★★
()
Ответ на: комментарий от GluckMan

Что вполне логично, ведь код действительно стал сложнее и его стало намного больше. Сравни операционные системы конца 80-х и сейчас, хотя бы по объёму.

coldy ★★
()
Ответ на: комментарий от buddhist

Я от VS 2010 ожидал, что она будет тормозить и жрать память — она не обманула моих ожиданий.

Зато какой они скин наваяли. Сиди и любуйся! Тоже видел это поделие. Говорят, оно нормально работает лишь на Win7 и с тучей оперативы на борту.

Sadler ★★★
()
Ответ на: комментарий от Reset

Мой опыт говорит мне, что проприетарное ПО в 99.99% случаев работает как ожидаешь и как написано в документации

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

А я работал с таким проприетарным ПО, что любая поделка китайского студента уже смотрится неплохо.

Divius ★★
()

Вот именно так и нужно писать новости. Два пива этому господину.

Igron ★★★★★
()

Средний размер открытого ПО составляет 832000 строк кода, при этом на 1000 строк кода было выявлено в среднем 0,45 дефектов.
Средний размер проприетарной программы составляет 7,5 млн строк кода, на 1000 строк кода приходится в среднем 0,64 дефекта.

Тоесть проприетарный код обычно на порядок сложнее, а количество дефектов больше на непропорционально незначительную величину.

При сходных размерах качество проприетарного и открытого ПО находится примерно на одном уровне, так Linux 2.6, насчитывающий почти 7 млн строк кода (средний размер проприетарной программы составляет 7,5 млн строк кода), имеет показатель качества 0,62, что схоже со средним показателем качества проприетарного ПО - 0,64.

Что и требовалось доказать. Качество кода зависит от конкретных разработчиков, а не от их религиозной принадлежности GNU, RMS и прочим святым коровам.

bbk123 ★★★★★
()
Ответ на: комментарий от buddhist

Если на целероне пускать, то возможно. А теперь сравни с открытым эклипсом, который тормозит везде и память жрет как свинья помои

Reset ★★★★★
()
Ответ на: комментарий от IceAlchemist

>> Как предлагаете к этому относиться? Я пользователь Linux только потому, что считаю эту систему лучше Windows.

Никто не держит же ^_~

Мои наблюдения говорят о том, что Linux удобнее, где люди выше находили критические ошибки в ядре я не понимаю.

Куда предлагаешь идти? Debian/FreeBSD? Или Solaris?

ZenitharChampion ★★★★★
()
Ответ на: комментарий от Reset

Эклипс, конечно, не быстр. Но с небольшими проектами (hello world переростки) он на моем атоме справляется. Большие не пробовал, не доводилось. Конечно, хотелось бы побыстрее, но жить можно. Увы, студию для сравнения не могу - нет видны на этом ноуте. А памятушку эклипс любит, это да. Память для него критичнее процессора.

Toll ★★
()
Ответ на: комментарий от ZenitharChampion

Куда предлагаешь идти? Debian/FreeBSD? Или Solaris?

А Дебиан-то чем не линукс?

evilface ★★
()
Ответ на: комментарий от ZenitharChampion

Debian/FreeBSD

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

malbolge ★★
()

postgres торт, пора перевести на него свои проекты

etwrq ★★★★★
()

# Средний размер открытого ПО составляет 832000 строк кода, при этом на 1000 строк кода было выявлено в среднем 0,45 дефектов.
# Средний размер проприетарной программы составляет 7,5 млн строк кода, на 1000 строк кода приходится в среднем 0,64 дефекта.
# В общем и целом для индустрии ПО этот показатель составляет 1,0 дефектов на 1000 строк кода.

Это... как его... не могу понять... средние показатели free - 0.45, prop - 0.64, а во всей индустрии 1.0
Это... как его... не могу понять... ~1.4/1000 дефектов в ПО кому принадлежат?

Attila ★★
()
Ответ на: комментарий от ZenitharChampion

Debian-kfreebsd - ничего система. Главное, что нормальная fs из коробки имеется и нет траха со сборкой софта как в оригинальной freebsd.

Reset ★★★★★
()
Ответ на: комментарий от Toll

Как это неэргономичное некомпактное тормознутое говно на нетбуке можно юзать? Msvs хотя бы компактифицируется и не глючит при переключении режимов

Reset ★★★★★
()
Ответ на: комментарий от zink

Емнип, у них только компилятор и swt свои, а jvm сторонняя должна быть. Поправьте меня, если это не так.

buddhist ★★★★★
()

Интересно, такой унылый кусок дер.ма, как DRBD, официально считается вообще частью Ядра Linux или нет? Впрочем, там супротив 100 ошибок в дерьмовом коде, стабильно способствующем потере данных уже долгие годы, найдётся ещё 200 ошибок, которые могли бы быть сделаны, но разрешение этих проблемных ситуаций было «благоразумно» возложено на пользователей. Дескать, ой, у нас зеркало развалилось, так что же делать?! Элементарно, Ватсон, нужно вызвать написанный юзером внешний скрипт и передать ему параметры.
Аналогично, я думаю, очень сильно портит картину подсистема ALSA - ещё одно жирное пятно на репутации Linux.
Если проверяли btrfs, то это, с моей т.з., некорректно: сам автор пишет, что пользоваться этим в продакшн нельзя, а пока он так и пишет, и претензий к нему никаких предъявлять нельзя.

DRVTiny ★★★★★
()

Средний размер открытого ПО составляет 832000 строк кода

Чтооо??? Даже для среднего по больнице выглядит нереалистично. Ааа, они сделали выборку из 45 проектов. Очень репрезентативно. Короче, выкиньте все упоминания о «среднем размере проекта» и прочей лабудени.

true_admin ★★★★★
()
Ответ на: комментарий от baverman

А ты попробуй пописать под ламповое говно мамонта, еще и на дуде заиграешь, инфа 100%.

Один уже заиграл. :) http://stallman.org/rms.jpg

Zubok ★★★★★
()
Ответ на: комментарий от Reset

проприетарное ПО в 99.99% случаев работает как ожидаешь

Да, это показатель качества. Сажусь за винду, ожидаю проблемы. Проблемы бывают (это даже не наезд, но проблемы реально бывают). Работает, как ожидаю. :)

ForwardToMars
()
Ответ на: комментарий от Reset

Они тупо себя рекламировали и свой софт, а не опенсорс. («лидер автоматизированного тестирования кода»)

ForwardToMars
()
Ответ на: комментарий от anonymous

Первый годнее рибона будет, хоть их и не совсем корректно сравнивать. Да и к тому же пилят гномошел постоянно и с каждым релизом он всё более тортовее становится, к тому же ещё Cinnamon пилят. :)

daemonpnz ★★★★★
()
Ответ на: комментарий от daemonpnz

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

Reset ★★★★★
()
Ответ на: комментарий от daemonpnz

Да и к тому же пилят гномошел постоянно и с каждым релизом он всё более тортовее становится

Не становится, в нем сама идея гнилая, исправить гномошел => отказаться от гнилой идеи => выкинуть гномошел на%%%й

Reset ★★★★★
()
Ответ на: комментарий от daemonpnz

Ога, ога, если она не гнилая, то почему в бубунте его выкинули, а в минте пилят свой cinnamon ? Погугли и почитай различные форумы - гном3 ругают все из-за того, что тривиальные действия в нем делаются через задницу.

Reset ★★★★★
()
Ответ на: комментарий от Reset

Т.е если бубунта с минтом не стала юзать gnome-shell, то он гавно?! Логика просто железная. Мнения у тебя своего нет.

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