LINUX.ORG.RU

Coverity опубликовала отчет о результатах исследования кода ядра Linux


0

0

Потратив четыре года на совершенствование методов выявления ошибок в программном коде, эксперты Coverity "прошерстили" около шести миллионов строк кода ядра версии 2.6 и обнаружили в нём немногим менее одной тысячи ошибок. Работа проделана большей частью в автоматическом режиме специальной программой (SWAT), основные принципы функционирования которой основатели Coverity сформулировали ещё в бытность свою студентами Стэнфордского университета. Задача SWAT - выявление ошибок в статическом коде C и C++, так что доступные всем и вся исходники ядра свободной ОС пришлись как нельзя кстати. Впрочем, интересно другое - много это или мало, тысяча ошибок на почти шесть миллионов строк? Сравнивая с известной работой другой группы исследователей (Carnegie Mellon University), анализировавших качество кода некоторых проприетарных программ, можно утверждать: весьма умеренно. По самой скромной оценке, в ядре Linux ошибки встречаются в шесть раз реже, нежели в программах с закрытым кодом.

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

Ответ на: комментарий от bukazoid

статью читай.

уже многое заделано.

Deleted
()
Ответ на: комментарий от flamer

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

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

блин... какая разница, сколько там у коммерческих поделий ошибок?! надо догнать и перегнать бздунов! остальные и так не конкуренты... (понятно, что "платные проги - это студенческие поделки, а не кой-нить QNX) :-(

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

>платные проги - это студенческие поделки, а не кой-нить QNX

А что QNX стал бесплатным?

Alexander_IL
() автор топика
Ответ на: комментарий от Sun-ch

>А если линтом проверить? >Тыщ 10 набежит наверняка :)

ты че, думаешь не проверяли? Я не знаю ничего об этом, ну уверен что проверяли. Потому как тупо не пользоваться методами автоматического выявления ошибок ;)

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

http://www.splint.org/

Splint is a tool for statically checking C programs for security vulnerabilities and coding mistakes. With minimal effort, Splint can be used as a better lint. If additional effort is invested adding annotations to programs, Splint can perform stronger checking than can be done by any standard lint.

Sun-ch
()
Ответ на: комментарий от Sun-ch

Посвящается Санычу

Люблю твои админские глаза.
В них мир заоблачных творений,
Воспетых воскрешенным миром.
В них боль. В них стон. В них дождь.
И в них гроза
Разбитых судеб поколений.
В них песнь, зовущаяся лирой.
Люблю твои админские глаза.
Большие. Черные. С печалью.
Глаза, в которых столько света,
В которых юная слеза-лоза,
Рожденная небесной далью,
Ждет солнца. Ждет тепла. Привета.
Люблю твои админские глаза...

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

> Vot bi oni tak chto nit realno gluchnoe proverili naprimer, KDE...

Всё равно самые злостные баги такими тулзами не выявляются. Например, на пролетавших недавно анекдотах на си splint выявляет только отсутствие проверок выделения памяти, а самое весёлое пропускает.

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

> Люблю твои админские глаза.

Копирайты ставь, ведь ты не Елена Шуваева-Петросян

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

>Люблю твои админские глаза.
>Большие. Черные. С печалью.

Деточка, а на фоте разве не видно, что я голубоглазый блондин?

Sun-ch
()
Ответ на: комментарий от Sun-ch

На фоте твоей в последний раз было видно, что ты черный лакированый баян.

Outlander-mik
()

> По самой скромной оценке, в ядре Linux ошибки встречаются в шесть раз реже, нежели в программах с закрытым кодом.

Ну вот по одной это фразе ВСЕ ясно.

macavity
()
Ответ на: комментарий от Cadaver

> Vot bi oni tak chto nit realno gluchnoe proverili naprimer, KDE...

KDE гоняется под valgrind, штука тож неслабая.

anonymous
()

Могли бы и у государства пробить по блату код маздая и тоже проверить. Или хотя бы ворованный код Win2K. Вот это было бы что-то! Одна ошибка на сто строк кода.

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

> Могли бы и у государства пробить по блату код маздая и тоже проверить. Или хотя бы ворованный код Win2K. Вот это было бы что-то! Одна ошибка на сто строк кода.

Кода мастдая - это как алмаз из "Приключений принца Флоризеля". На него можно смотреть, но публиковать результаты его анализа никак нельяз. Так что мечты, мечты... И всякие заявления о количестве ошибкок в коде мастдая (пассаж про скромные оценки я заценил) - это все пустое. Никто эти оценки ни проверить, ни подтвердить, ни опровергнуть не может.

зы: Скоро соляру откроют - вот тогда и посмотрим. :-)

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

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

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

Ну, во-первых, кривой сборкой можно запороть любой хороший код. А, во-вторых, надо код видеть. Может, там один чел писал так, а другой - этак, у одного офигенные коды, а у другого - как курица лапой. Отсюда простой вывод делаем: Контора неоднородная, пишут много людей, у людей, ответственных за сборку - руки из одного места торчат...

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

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

Не все так просто, дружок. Этак можно и на заборе "опубликовать". Для публикации надо взять СМИ, предоставить им свой материал и попросить его опубликовать. Они, если с головой дружат, подумают прежде чем публиковать, если не дружат опубликуют. Сначала твои писульки, потом (по решению суда) опровержение. На этом твоя карьера как эксперта в области анализа исходных кодов закончиться навсегда.

зы: Никто не подкинет ссылки на независимые сравнительные бенчмарки Oracle и MS SQL? :->

macavity
()
Ответ на: комментарий от Sun-ch

утилита rats проверяет исходники на С, perl, php на наличие ошибок, связанных с безопасностью кода.

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

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

а действительно, если по ntoskrnl.exe пройтись source-code анализатором - то будет одна большая ошибка =):

Error: This is binary file =)

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

уже одно то что они не дают смотреть свой код - очевидное доказательство его низкого качества. и не надо пиз?"!;ть про "решения" - у них все запатентовано

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

> http://www.splint.org/

> Splint is a tool for statically checking C programs for security vulnerabilities and coding mistakes. With minimal effort, Splint can be used as a better lint. If additional effort is invested adding annotations to programs, Splint can perform stronger checking than can be done by any standard lint.

А есть аналоги для С++?

Насколько я понял из документации, тут есть только проверки на то, сможет ли код на С переварить С++ компилятор...

И (в сторону насчет MS) -- неужели все думают, что они (и многие другие производители закрытого софта) не пользуются аналогичными средствами для автомвтической проверки? Ведь пользуются. Только не все ошибки можно так уловить, к сожалению. А то бы глючных программ вообще не было

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

Вах! Ты видил его глаза?! Счастливый! А я толлько затылок :))

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

народ я тут помню где то с пол года назад сперли ведь кусок исходников винды даже на ФТПшники вроде выкладывал так может у кого завалялся :-) можо прогнать :-)

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

>а у меня винда не глючит

>что-то мы делаем не так...

Пиздишь много, врунишка. ;-)

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

РТО читать? уж увольте. знаменитый рекламист и пеарщик мс-решений на зднете. ему про pax а он про юникс в стенфорде. знаний в никс системах у него ноль без палочки

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

Да ну, два месяца назад понадобилось мне в русской версии WinXP сделать английскую раскладку клавиатуры по-умолчанию, так такие начались проблемы на ровном месте: то значек в трее пропал, то в блокноте раскладка не переключается, а в одном приложении русский вообще пропал, теперь надо все закрыть, переключить на русский а потом запускать приложение по новой. Самое интересное что дважды вообще пришлось комп перегружать. Только не надо говорить про обновления и SP, обновиться я не могу (по причинам от меня не зависящим), такие простые вещи как раскладка клавиатуры должны работать без проблем в продажном софте, ведь это не альфа и не бета версии. WinXP лицензионный.

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

> Да ну, два месяца назад понадобилось мне в русской версии WinXP сделать английскую раскладку клавиатуры по-умолчанию

Если руки не для скуки, то все работает.

macavity
()
Ответ на: комментарий от Vlad_Ts

>> Да ну, два месяца назад понадобилось мне в русской версии WinXP сделать английскую раскладку клавиатуры по-умолчанию, так такие начались проблемы на ровном месте

Это глисты, - это пройдет... А, надо просто руки с жопы выдирать и на место пересаживать. Медицина у нас сейчас сильная, поможет наверняка!

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

> а у меня винда не глючит
>
> что-то мы делаем не так...

Да мне вот как-то тоже знакомый один сказал, что у него уже полгода винда работает, не виснет да еще и не глючит, я ему так и сказал: "Ты что-то не так делаешь!" :-)
И он признался в чём секрет - он её оказывается выключает всё время через Reset и проверки диска пропускает :-))

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

> Да мне вот как-то тоже знакомый один сказал

По кащенке небось знакомы? :)

anonymous
()

Здесь http://zdnet.ru/?ID=461818 еще писали.

Но самое приятное на самом деле в конце:

"...Coverity планирует регулярно публиковать отчеты о багах в Linux и доводить результаты до сообщества разработчиков."

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