The OpenNET Project / Index page

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

25.02.2012 11:42  Результаты анализа системой Coverity безопасности и качества открытого кода

Компания Coverity, развивающая инструментарий для автоматического анализа кода на предмет наличия проблем безопасности и ошибок представила очередной ежегодный отчёт (PDF, 550 Кб) с результатами изучения 37 млн строк кода из 45 наиболее активно разрабатываемых открытых проектов и 300 млн строк кода из 41 анонимного проприетарного продукта. В среднем, в открытых проектах было выявлено 0.45 дефектов на 1000 строк кода, для проприетарных продуктов данный показатель составляет 0.64, при этом средний показатель качества для всей индустрии разработки ПО составляет 1 ошибка на 1000 строк кода.

Система Coverity Scan была создана в 2006 году по инициативе Министерства национальной безопасности США для обеспечения и усиления безопасности информационной инфраструктуры Соединённых Штатов, в которой используются различные Open Source проекты. В настоящее время программа тестирования Coverity Scan охватывает около 300 открытых проектов, суммарный размер кода которых превышает 61 млн строк. При автоматическом анализе данного кода было выявлено 49654 дефектов из которых уже исправлено 15278. Для анализа кода в этом году была использована новая версия Coverity Scan в которой были представлены дополнительные средства статического анализа кода и добавлены алгоритмы выявления новых типов ошибок.

В представленном отчёте подробно проанализированы выявленные ошибки в ядре Linux 2.6, PHP 5.3 и PostgreSQL 9.1. Проекты были выбраны исходя из различий в их типе (системное и прикладное ПО) и размере кодовой базы. Уровень качества кода данных проектов оказался значительно выше средних показателей по индустрии:

  • В ядре Linux, объём кода которого составляет 6.8 млн строк кода, было выявлено 4261 ошибок из которых 1249 признаны ошибками с высокой степенью опасности (451 - повреждение памяти, 418 - некорректный доступ к памяти, 139 - утечка ресурсов, 266 - неинициализированные переменные). Показатель качества кода ядра составил 0.62 дефекта на 1000 строк кода, что оказалось сравнимым с средним показателем качества рассмотренных проприетарных продуктов (0.64). Примечательно, что данное сходство показателей качества коррелирует с размером кодовой базы - средний размер участвующих в оценке проприетарных продуктов составил около 7 млн строк кода. Если рассматривать отдельные подсистемы, то в дереве Staging и сетевом стеке уровень качества составляет 0.97, в звуковой подсистеме 0.38, файловых системах 0.65, драйверах 0.61, других компонентах 0.48;
  • В PHP 5.3, объём кода которого составляет 538 тыc. строк кода, выявлено 97 ошибок из которых 15 признаны опасными (5 - повреждение памяти, 3 - некорректный доступ к памяти, 7 - утечка ресурсов). Показатель качества кода интерпретатора PHP составил 0.20 дефекта на 1000 строк кода. Наилучшее качество отмечено в Zend - 0.09, уровень качества основного кода и стандартных расширений - 0.14, ext_date - 0.17, PDO - 0.30, расширения SQLite - 0.61;
  • В PostgreSQL, объём кода которого составляет 1.1 млн строк кода, выявлено 233 ошибок из которых 116 опасных (22 - повреждение памяти, 36 - некорректный доступ к памяти, 50 - утечка ресурсов, 8 - неинициализированные переменные). Показатель качества кода СУБД PostgreSQL составил 0.21 дефекта на 1000 строк кода;

Некоторые наблюдения:

  • Открытые проекты достаточно активно реагируют на выявленные системой Coverity дефекты. Например, команда разработчиков BRL-CAD устранила более 1600 дефектов в течение 5 дней после того как авторы исследования уведомили разработчиков;
  • В сумме в 2011 году было исправлено 6133 выявленных дефектов, что больше чем в 2010 году;
  • Всего в рассмотренных 45 открытых проектах было отмечено 16884 проблем, распределение которых выглядит следующим образом:
    • Проблемы с порядком вычислений (Control Flow Issues) 3,128
    • Разыменование NULL-указателя (Null Pointer Dereferences) 2,818
    • Неинициализированные переменные (Uninitialized Variables) 2,051
    • Повреждения памяти (Memory Corruptions) 1,551
    • Проблемы с обработкой ошибок (Error Handling Issues) 1,535
    • Утечка ресурсов (Resource Leaks) 1,384
    • Проблемы с обработкой целочисленных значений (Integer Handling Issues) 1,368
    • Некорректный доступ к памяти (Memory - Illegal Access) 1,136
    • Небезопасная обработка данных (Insecure Data Handling) 824
    • Некорректные выражения (Incorrect Expression) 550
    • Проблемы с одновременным доступом (Concurrent Access Violations) 253
    • Ошибки использования API (API Usage Errors) 178
    • Зависания программ (Program Hangs) 107
    • Несоответствия иерархии класса (Class Hierarchy Inconsistencies) 1


  1. Главная ссылка к новости (http://www.bradenton.com/2012/...)
Лицензия: CC-BY
Тип: К сведению
Ключевые слова: coverty, test, quality, php, postgresql, kernel
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 12:44, 25/02/2012 [ответить] [смотреть все]
  • –31 +/
    Нормально так Все ошибки показательны для языков программирования C, C и явля... весь текст скрыт [показать]
     
     
  • 2.15, Аноним, 14:45, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +16 +/
    > страдать от ошибок программиста отслеживать в ручную управлением памятью и пр.

    Ну хорошо, а большие проекты вебни страдают от CSRF, XSS, insecure data handling во всех ипостасях, SQL-иньекций, ошибок разграничения доступа, ... - ну что, вам полегчало, да? :)


     
     
  • 3.62, Xasd, 22:40, 25/02/2012 [^] [ответить] [смотреть все]  
  • +4 +/
    интересно что используя нормальные Фрэймворки -- довольно сложновато допустить ... весь текст скрыт [показать]
     
     
  • 4.79, ананим, 23:42, 25/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    а где сложнее а с MsSQL это будет сложнее сделать зыж это применимо для ЛЮБОГ... весь текст скрыт [показать]
     
     
  • 5.83, VoDA, 00:32, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    В java через JPA или любые языки работающие с SQL через связанные переменные ... весь текст скрыт [показать]
     
     
  • 6.91, ананим, 01:29, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Ха Через А jdbc там ужО отменили Через подставь_нужное можно и в подставь_... весь текст скрыт [показать]
     
     
  • 7.94, VoDA, 02:32, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    В каком то смысле jdbc уже отменили в приложении ты можешь запросить работающий... весь текст скрыт [показать]
     
     
  • 8.110, ананим, 04:40, 26/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    не в каком-то, а в прямом смысле вы передёргиваете мягко говоря или возможно д... весь текст скрыт [показать]
     
     
  • 9.111, Xasd, 04:57, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    причём тут можно или нельзя чащще всего ошибки допускаются -- в случаях ког... весь текст скрыт [показать]
     
     
  • 10.138, ананим, 12:48, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Что ж Объясню ещё раз Php 8212 это язык Как и java И там и там можно испо... весь текст скрыт [показать]
     
     
  • 11.153, Xasd, 14:35, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    хорошо чтобы Вы поняли мою мысль -- я спрошу вот так почему в PHP -- те т... весь текст скрыт [показать]
     
     
  • 12.155, arisu, 14:39, 26/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    you made my day. no, really!
     
     
  • 13.159, ананим, 14:57, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    присоединяюсь. :D
     
  • 12.162, ананим, 15:08, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    не знаю, почему продолжаю отвечать нет таких языков нет в той же жабе без j... весь текст скрыт [показать]
     
  • 9.135, VoDA, 11:42, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Пожалуйста напиши мне пример JavaEE приложения на JPA с возможностью SQL-injecti... весь текст скрыт [показать]
     
     
  • 10.139, ананим, 12:52, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Выше уже ответил Зыж И ещё потом удивляются отношения к жабистам, как к курице,... весь текст скрыт [показать]
     
  • 10.238, Аноним, 23:06, 02/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Это константы запретить В java уже запретили что-ли ... весь текст скрыт [показать]
     
  • 7.190, Tav, 01:19, 27/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Справедливости ради, в jdbc никто не подставляет параметры в sql выражения путем... весь текст скрыт [показать]
     
     
  • 8.194, ананим, 04:58, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    серьёзно никто-никто D пример и не откуда-нибудь, а с IBM D http publ... весь текст скрыт [показать]
     
     
  • 9.211, Tav, 11:15, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    В PHP prepared statements добавили позже, следуя примеру JDBC И да, те, кто изн... весь текст скрыт [показать]
     
     
  • 10.225, ананим, 14:40, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    На практике наблюдаю ровно противоположенное 8212 те кто и использовал php с... весь текст скрыт [показать]
     
  • 6.213, Yankee, 12:40, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Вы бы уж говорили за себя Потрудитесь почитать следующее http codeigniter co... весь текст скрыт [показать]
     
  • 2.24, Карбофос, 15:14, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +4 +/
    в хоть программировали на этих языках, или это так, точка зрения жаба дотнет-код... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.39, тоже Аноним, 17:32, 25/02/2012 [^] [ответить] [смотреть все]  
  • +9 +/
    Плевки жабистов и дотнетчиков в сторону Сей и Крестов на форумах - это не точка зрения, это нечто физиологическое.
     
     
  • 4.201, Аноним, 10:30, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Как будто они багов в том числе и ведущих к уязвимостям не делают ... весь текст скрыт [показать]
     
  • 2.25, Аноним, 15:17, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Все программы имеют ошибки Капитан, Вы ... весь текст скрыт [показать] [показать ветку]
     
  • 2.28, fork8, 15:33, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +10 +/
    Многое пишется на явах, шарпах, но когда в статье говорится о ядре линукса, к примеру, или о бд postgres, сама критика с/c++ становится не то, что неуместной, а какой то неадекватной.
     
  • 2.58, Аноним, 21:23, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • –4 +/
    Что касается С , то в 21-м веке уже нет никакой необходимости управлять памятью... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.63, Xasd, 22:48, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    печаль тут в том что некоторые не только считают, но ещё е УПРАВЛЯЮТ в C ресур... весь текст скрыт [показать]
     
     
  • 4.65, pavlinux, 23:03, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    С++ надо вообще прибить как не нужный балласт между С и более высшими языками.
     
     
  • 5.74, Карбофос, 23:22, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    и тут Остапа понесло просто уровень абстракции несколько другой, но не до ... весь текст скрыт [показать]
     
     
  • 6.77, pavlinux, 23:31, 25/02/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    Вот я из-за принципа Ц не юзаю Рядом со мной сидят ещё трое, вот они там х я... весь текст скрыт [показать]
     
     
  • 7.80, Аноним, 23:55, 25/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Не знаю как где, но авторы С С позаботились о том, чтобы прикладным программер... весь текст скрыт [показать]
     
     
  • 8.82, anonymous, 00:06, 26/02/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    наилучший Как насчёт почти-полностью отсортированных данных, где нужен radix, и... весь текст скрыт [показать]
     
     
  • 9.85, arisu, 00:46, 26/02/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    т-с-с как ты посмел сомневаться, неверный stl и libc созданы не человеками, но... весь текст скрыт [показать]
     
     
  • 10.95, Кирилл, 02:32, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Но там действительно наилучшие решения на данный момент времени Всегда Изобрет... весь текст скрыт [показать]
     
     
  • 11.133, Df232z, 11:35, 26/02/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    Уважаемый, наилучших алгоритмов не существует Для любого данного алгоритма ес... весь текст скрыт [показать]
     
     
  • 12.142, arisu, 13:47, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    он не поймёт увы ... весь текст скрыт [показать]
     
     
  • 13.156, тоже Аноним, 14:42, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Раз уж вы завели ликбез-дуэт, допевайте куплет и эта самая оптимальность алгори... весь текст скрыт [показать]
     
     
  • 14.160, arisu, 14:58, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    ты что сказать-то хотел?
     
     
  • 15.170, тоже Аноним, 17:01, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Что стремление к оптимальности алгоритмов должно чем-то оправдываться Процессор... весь текст скрыт [показать]
     
     
  • 16.175, arisu, 18:02, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    а мужики до сих пор не знают 8230 наверное, ты просто всем сообщить не успел п... весь текст скрыт [показать]
     
     
  • 17.184, тоже Аноним, 22:36, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Сплошь и рядом - пофигу До и после сортировки может происходить много чего инте... весь текст скрыт [показать]
     
     
  • 18.185, arisu, 22:44, 26/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    вот что интересно вроде бы и связно человек пишет, и вещи достаточно неглупые ... весь текст скрыт [показать]
     
     
  • 19.198, тоже Аноним, 09:05, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    По двум причинам Во-первых, это все-таки холиварный срач, приходится соблюдать ... весь текст скрыт [показать]
     
     
  • 20.215, arisu, 13:51, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    не куда лучше , а всегда лучше вот на что стойку сделали ... весь текст скрыт [показать]
     
  • 21.226, тоже Аноним, 15:47, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Тут логическая нестыковка либо вы читаете оппоненту ликбез, либо предполагаете,... весь текст скрыт [показать]
     
  • 9.86, Аноним, 01:14, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Наилучший для общих случаев, которых 99 Да, исключительные условия, возможно, ... весь текст скрыт [показать]
     
     
  • 10.89, xxx, 01:22, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Я искренне рад за тебя, и даже завидую Зафигачил qsort и радуешься ... весь текст скрыт [показать]
     
  • 7.81, Карбофос, 23:58, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    ну какие-то мелочные они у тебя ко мне коллеги обычно обращаются с просьбами ра... весь текст скрыт [показать]
     
  • 7.100, fork, 02:56, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    С такими принципами может и с линуксом завязать, где на сях много чё написано, д... весь текст скрыт [показать]
     
     
  • 8.101, fork, 02:57, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Помарочка - на плюсах, а не сях


     
  • 3.202, Аноним, 10:31, 27/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    В XXI веке нет никакой нужды в этих галимых велосипедах, самолетах и поездах Ве... весь текст скрыт [показать]
     
  • 2.84, VoDA, 00:34, 26/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    н-да большая часть, а именно Разыменование NULL-указателя Null Pointer Derefe... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.90, xxx, 01:25, 26/02/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    И не говори, GC также жрет неуёмно память в runtime выполняется куча всякой лев... весь текст скрыт [показать]
     
     
  • 4.98, VoDA, 02:43, 26/02/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    Да Тут выбор либо ошибки в коде или CPU работает за программиста Машина должна... весь текст скрыт [показать]
     
     
  • 5.103, fork, 03:27, 26/02/2012 [^] [ответить] [смотреть все]  
  • +5 +/
    Как только появится язык, который принципиально уберет часть багов из java и C ... весь текст скрыт [показать]
     
     
  • 6.104, fork, 03:29, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Помарочка - сях да плюсах

     
  • 6.130, VoDA, 11:30, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    gt оверквотинг удален Начнем с начала, что в реал-тайме вообще выделение освоб... весь текст скрыт [показать]
     
     
  • 7.144, arisu, 13:54, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    ну вот 8212 чего не хватишься, всё у них запрещают а почему, собственно, над... весь текст скрыт [показать]
     
     
  • 8.148, VoDA, 14:22, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Запрещать нужно для запрета совершать ошибки Даже на С освобождение памяти ди... весь текст скрыт [показать]
     
     
  • 9.151, arisu, 14:32, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    с каких пор это костылище стало эталоном O_O каким образом это должно волновать... весь текст скрыт [показать]
     
     
  • 10.171, VoDA, 17:40, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Я уверен, что вы умеете писать программы так, что в них не содержатся ошибки Но... весь текст скрыт [показать]
     
     
  • 11.176, arisu, 18:04, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    нет, я умиляюсь тому, как жабисты гордятся своими костылями p s как будто в жа... весь текст скрыт [показать]
     
     
  • 12.180, VoDA, 21:34, 26/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    мемори ликов - нет пока сама JVM не течет, но и это давно отлажено в сферичес... весь текст скрыт [показать]
     
     
  • 13.181, arisu, 21:38, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    задумчиво совсем нет, ага только вот пардон, заякореные данные, к которым про... весь текст скрыт [показать]
     
     
  • 14.205, Аноним, 10:36, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    А иногда и просто медвежья услуга Тем более что дебилушки не умеют им нормально... весь текст скрыт [показать]
     
  • 13.206, Аноним, 10:40, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Да как ни назови, если память так или иначе утекает, это утечки памяти Вообще, ... весь текст скрыт [показать]
     
  • 7.230, adolfus, 21:47, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    мне в реалтайме нужно обрабатывать поступающие из очереди запросы И как я это с... весь текст скрыт [показать]
     
     
  • 8.231, VoDA, 00:55, 28/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Предварительное аллоцирование по максимально возможному размеру запроса В RT вс... весь текст скрыт [показать]
     
  • 5.108, arisu, 04:24, 26/02/2012 [^] [ответить] [смотреть все]  
  • +5 +/
    8230 затачивались под стадо взаимозаменяемых обезьян вот и весь секрет нет ... весь текст скрыт [показать]
     
     
  • 6.128, жабабыдлокодер, 11:20, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Да-да, раньше вот были знатоки и профессионалы лошадь подкуешь, запряжешь, сиди... весь текст скрыт [показать]
     
     
  • 7.136, Аноним, 11:51, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    А сейчас в авариях погибают больше чем во время боевых действий Обезьяны, чего ... весь текст скрыт [показать]
     
  • 6.129, Df232z, 11:28, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Как впрочем и с Куда то толпу симула погромистов надо было девать нет как то... весь текст скрыт [показать]
     
     
  • 7.146, arisu, 14:04, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    увы, он реально тупой да ещё и испорченый попыткой запихать туда концепции, кот... весь текст скрыт [показать]
     
     
  • 8.150, VoDA, 14:25, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Будь последователен - расскажи в чем неконсистентность наличия примитивного и об... весь текст скрыт [показать]
     
     
  • 9.152, arisu, 14:33, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    ты сам уже всё сказал если до сих пор не очевидно 8212 медицина бессильна p... весь текст скрыт [показать]
     
     
  • 10.172, VoDA, 17:47, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Да, есть косяк Появился в лохматом году из за того, что на объектах работать сл... весь текст скрыт [показать]
     
     
  • 11.178, arisu, 18:07, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    я же сказал я понимаю, зачем так было сделано я не понимаю, почему жабисты при... весь текст скрыт [показать]
     
     
  • 12.182, VoDA, 21:39, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Ок Это был маркетинговый ход для привлечения С ников, которых много и для кот... весь текст скрыт [показать]
     
     
  • 13.183, arisu, 21:45, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    там для начала неплохо было бы саму JVM починить, с её боксингом всего и вся а ... весь текст скрыт [показать]
     
     
  • 14.210, Аноним, 11:06, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Вы наверное удивитесь но замыкания в жаве внезапно есть ... весь текст скрыт [показать]
     
     
  • 15.216, arisu, 13:56, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    я просто буду улыбаться, глядя на очередной костыль, про который жабисты сначала... весь текст скрыт [показать]
     
  • 14.232, VoDA, 00:57, 28/02/2012 [^] [ответить] [смотреть все]  
  • +/
    боксинг это фишка компилятора синтаксичекий сахарок замыкания в прочем тоже са... весь текст скрыт [показать]
     
     
  • 15.233, arisu, 01:15, 28/02/2012 [^] [ответить] [смотреть все]  
  • +/
    боксинг 8212 это фишка VM которая VM не позволяет передавать указатели ссы... весь текст скрыт [показать]
     
  • 6.132, VoDA, 11:34, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Наверное про отладчик нужно писать для заманивания С или С Но явно не для jav... весь текст скрыт [показать]
     
     
  • 7.145, arisu, 14:00, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    у жабистов отладка оборжака ребятки, когда у вас будет отладчик хотя бы в пол... весь текст скрыт [показать]
     
     
  • 8.157, VoDA, 14:48, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    из того, что увидел на вики-учебнике про отладчик для смаллтока и что не присутс... весь текст скрыт [показать]
     
     
  • 9.158, arisu, 14:57, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    не надо читать вики-учебники особенно по смолтолку пока ты с этой системой б... весь текст скрыт [показать]
     
  • 6.204, Аноним, 10:34, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Капитан как обычно суров но справедлив ... весь текст скрыт [показать]
     
  • 5.203, Аноним, 10:32, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Поэтому жабисты пытаются переложить на нее даже думание Так, чисто глядя на под... весь текст скрыт [показать]
     
     
  • 6.217, arisu, 13:57, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    неа, зря ты: этот, вроде, вполне адекватный.
     
  • 2.197, Некто, 06:22, 27/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Является ли вышеприведенный текст генетическим дефектом русского языка ... весь текст скрыт [показать] [показать ветку]
     
  • 1.4, Аноним, 13:14, 25/02/2012 [ответить] [смотреть все]  
  • –1 +/
    Сегодня анализирует, завтра сама будет писать код Не далеко до кнопки Зделать ... весь текст скрыт [показать]
     
     
  • 2.7, тоже Аноним, 14:15, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +11 +/
    Ну, на компьютере давно есть кнопка "проверить орфографию" - кто же ей пользуется?
    Три предложения - три ошибки. Зато машины не восстанут.
     
  • 1.5, MrClon, 13:24, 25/02/2012 [ответить] [смотреть все]  
  • +/
    > дереве Staging и сетевом стеке уровень качества составляет 0.97, файловых системах 0.65, драйверах 0.61

    Посмотреть так вообще не понятно как оно умудряется работать, однако-же работает.

     
     
  • 2.6, 1, 13:56, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    так и работает... то тут отвалится, то там
     
  • 1.8, uy2qw, 14:20, 25/02/2012 [ответить] [смотреть все]  
  • +2 +/
    > команда разработчиков BRL-CAD устранила более 1600 дефектов в течение 5 дней

    Вот это производительность труда! Они устраняли 40 дефектов в час! Или там просто штат очень большой?

     
     
  • 2.11, qux, 14:36, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Инфа непонятно откуда, гугл по "brl cad covernity" почти ничего не находит.
     
     
  • 3.14, ваня, 14:44, 25/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Coverity
     
     
  • 4.17, qux, 14:50, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Точно, туплю Ну по крайней мере в англ варианте так же http blog coverity c... весь текст скрыт [показать]
     
  • 2.27, Аноним, 15:20, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    И что, ты не запатчишь 40 кривых использований указателей за час например Ну хо... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.31, Неиван, 16:15, 25/02/2012 [^] [ответить] [смотреть все]  
  • +4 +/
    Ну, некоторые люди не просто перед каждым обращением указателю пишут if p re... весь текст скрыт [показать]
     
     
  • 4.69, arisu, 23:09, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    особенно интересно, как это выяснит система анализа, у которой вообще мозгов нет... весь текст скрыт [показать]
     
     
  • 5.97, Кирилл, 02:37, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Мозги такие же, как у человека -- находит находит подобие в заданной базе обра... весь текст скрыт [показать]
     
     
  • 6.224, arisu, 14:14, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    нененене, господа модераторы тут нам только что не напрягаясь решили основную п... весь текст скрыт [показать]
     
     
  • 7.236, Кирилл, 17:30, 28/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Да Но не только Нужно ещё эту базу образцов составить, т е научить Сколько... весь текст скрыт [показать]
     
  • 4.207, Аноним, 10:43, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Не, ну что это за жирный троллинг Вам не кажется что потоньше троллить надо ... весь текст скрыт [показать]
     
  • 2.40, тоже Аноним, 17:34, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Возможно, ряд ошибок решался примитивной автозаменой - никто же не сказал, что о... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.50, Ytch, 20:13, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Добавьте к этому, что одно конкретное плохое место в коде может выдавать дес... весь текст скрыт [показать]
     
     
  • 4.66, тоже Аноним, 23:06, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Ну, статический анализатор и должен показывать как раз это место, а не те места,... весь текст скрыт [показать]
     
  • 2.68, pavlinux, 23:07, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Не, там ашипки типа while 1 for i 0 i 0 i if ... весь текст скрыт [показать] [показать ветку]
     
  • 1.9, qux, 14:32, 25/02/2012 [ответить] [смотреть все]  
  • +3 +/
    Третье место — неинициализированные переменные. Как оно мимо gcc проходит? Или на выхлоп никто не смотрит, Werror не использует?
     
     
  • 2.38, xxx, 17:20, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    Видел ли ты что мимо IAR проходит Там вообще такое ощущение что разработчики ко... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.52, Ytch, 20:27, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    А как вам это удается, если не секрет Я давненько не имел дел с IAR овскими ком... весь текст скрыт [показать]
     
     
  • 4.93, xxx, 01:39, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Сейчас там в IAR в основном все специфичные вещи запиханы в pragma, которые GCC... весь текст скрыт [показать]
     
  • 3.53, Ytch, 20:44, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    По моему скромному опыту, абсолютный рекордсмен и чемпион в этом сомнительном де... весь текст скрыт [показать]
     
     
  • 4.96, xxx, 02:37, 26/02/2012 [^] [ответить] [смотреть все]  
  • +4 +/
    Я уже давно стал полным сторонником того, что проприетарные средства разработки ... весь текст скрыт [показать]
     
     
  • 5.99, VoDA, 02:49, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Странные джависты, что джаву на С или С меняют Возвожно как джависты не смогл... весь текст скрыт [показать]
     
  • 5.191, Ytch, 01:24, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    У меня, в этом смысле, аналогично С некоторыми а может и всеми сигнальниками... весь текст скрыт [показать]
     
     
  • 6.218, arisu, 14:00, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    если бы только у вас так 8230 проблема с нормальными сотрудниками 171 821... весь текст скрыт [показать]
     
  • 4.208, Аноним, 10:45, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Что ж ты от проприетарщиков то хотел, дяденька ... весь текст скрыт [показать]
     
  • 2.113, pavlinux, 05:45, 26/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    code include stdio h include string h const char TEXT 123456789 in... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.115, arisu, 06:16, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    а с чего бы ему вякать, если неинициализированные глобальные статики попадают в ... весь текст скрыт [показать]
     
     
  • 4.118, pavlinux, 06:24, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    А может сразу инициализировать, хрен ли мучатся Есть пример Рабочий Глючный... весь текст скрыт [показать]
     
     
  • 5.120, arisu, 06:25, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    а ты тоже сразу отвечать не спеши, у меня волшебная кнопка редактора работает.
     
     
  • 6.209, Аноним, 10:47, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Соревнуетесь кто кого техничнее поднае редактированием ... весь текст скрыт [показать]
     
  • 5.121, arisu, 06:26, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    p.s. в любом случае за такой код надо тестикулы отрывать.
     
     
  • 6.123, pavlinux, 06:29, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    А в таком примере, переменная a может уползти далеко, за 3-4 функции, через 5... весь текст скрыт [показать]
     
     
  • 7.125, arisu, 06:35, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    just don t do that есть же хорошая практика изначально присваивать переменной ... весь текст скрыт [показать]
     
     
  • 8.126, pavlinux, 06:46, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    В ядре почти все свободные переменные неинициализируются Свободные, в смысле те... весь текст скрыт [показать]
     
  • 4.122, pavlinux, 06:27, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    code char a if strlen TEXT 20 a A ... весь текст скрыт [показать]
     
     
  • 5.141, qux, 13:24, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Тогда или a , или p и отсутствие сегфолта, не Во втором случае оно еще и р... весь текст скрыт [показать]
     
  • 4.124, pavlinux, 06:33, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    ... весь текст скрыт [показать]
     
  • 2.137, Df232z, 11:59, 26/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Все просто - не инициализированные переменные активно используются Есть специа... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.140, qux, 13:18, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Где оно в ядре, взглянуть можно для интереса Пытался найти, не получилось, -Wno... весь текст скрыт [показать]
     
     
  • 4.149, Df232z, 14:23, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Кому нравятся ругань компилятора Правильно - никому Так что починим Правил... весь текст скрыт [показать]
     
     
  • 5.154, arisu, 14:37, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    и что это должно продемонстрировать что компилятор неидеален, и иногда его ворн... весь текст скрыт [показать]
     
  • 5.161, qux, 15:01, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Прикольно Но еще бы передачу между функциями увидеть Хотя не понял, как это ра... весь текст скрыт [показать]
     
  • 4.193, pavlinux, 03:41, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Ну вот напрямер http lxr linux no linux v3 2 7 drivers xen xen-selfballoon c ... весь текст скрыт [показать]
     
     
  • 5.200, Alex_S, 09:58, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    эй, а разве static переменные внутри функции не в ноль инициализируютя по умол... весь текст скрыт [показать]
     
     
  • 6.221, arisu, 14:06, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    а вот кстати не помню ау, у кого там стандарт под рукой ... весь текст скрыт [показать]
     
     
  • 7.228, qux, 16:03, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    А кстати да То есть работать должно нормально, хоть стиль и хромает If an ob... весь текст скрыт [показать]
     
  • 6.229, Noname, 17:36, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Практически везде в 0, но это скорее костыль чем фича ... весь текст скрыт [показать]
     
  • 5.219, arisu, 14:03, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    человек имел в виду совсем другое он утверждает, что в ядре активно используетс... весь текст скрыт [показать]
     
  • 3.147, arisu, 14:09, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    на самом деле даже средней тупости оптимизатор понаделает тут мегапроблем что, ... весь текст скрыт [показать]
     
  • 3.177, Xasd, 18:07, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    если это используется хотябы гдето я имею ввиду серъёзные проекты, а не на дома... весь текст скрыт [показать]
     
     
  • 4.179, arisu, 18:12, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    раньше использовалось тю, сам использовал ещё во времена DOS 8212 даже с раз... весь текст скрыт [показать]
     
  • 3.195, pavlinux, 05:45, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Ага, щаз, сто тыщь раз gcc -fipa-pure-const test c a out 101 0 -fipa-pure-... весь текст скрыт [показать]
     
     
  • 4.220, arisu, 14:05, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    т-с-с-с ну что ты всё ломаешь щаз обидишь его, и он не скажет, какие именно уч... весь текст скрыт [показать]
     
  • 3.234, netch, 16:53, 28/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Это должно работать очень ненадёжно Gcc любит оптимизацию работы со стеком след... весь текст скрыт [показать]
     
     
  • 4.235, arisu, 17:05, 28/02/2012 [^] [ответить] [смотреть все]  
  • +/
    нашёл кому верить видишь же на просьбу показать конкретный код чувак слился и ... весь текст скрыт [показать]
     
  • 1.10, Bizdelnick, 14:32, 25/02/2012 [ответить] [смотреть все]  
  • +4 +/
    Перечитал первый абзац 5 раз. Так и не понял, как из 0,45 и 0,64 можно получить в среднем 1.
     
     
  • 2.20, Pahanivo, 15:03, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    читать надо учится первые два числа взяты в результате тестирования КОНКРЕТН... весь текст скрыт [показать] [показать ветку]
     
  • 2.21, Антон, 15:04, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    А запросто 0 45 и 0 64 -- это усреднение по проектам, а 1 0 -- по всем строкам ... весь текст скрыт [показать] [показать ветку]
     
  • 1.30, gegMOPO4, 16:08, 25/02/2012 [ответить] [смотреть все]  
  • +1 +/
    Где пометка «На правах рекламы»?
     
     
  • 2.54, Аноним, 20:45, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Coverity абсолютно бесплатно тестирует все проекты под открытыми лицензиями, нуж... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.73, pavlinux, 23:15, 25/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    Мы без них потестируем Пущай код отдают А то блин всё проверят, а самое вкусн... весь текст скрыт [показать]
     
  • 1.34, Buy, 16:19, 25/02/2012 [ответить] [смотреть все]  
  • –2 +/
    > Например, команда разработчиков BRL-CAD устранила более 1600 дефектов в течение 5 дней

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

     
     
  • 2.36, ананим, 16:44, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Зато у проприетастов всё хорошо.
    Это хотел сказать?
     
  • 2.41, тоже Аноним, 17:38, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Вы хотели услышать, что в ядре Линукс до сих пор была россыпь ошибок, на устране... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.57, Аноним, 21:19, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Не нашлось это синоним нет вообще Тогда почему ежемесячно обновляются ядра,... весь текст скрыт [показать]
     
     
  • 4.60, Аноним, 21:54, 25/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Еще лучше, еще быстрее!!
     
  • 4.71, тоже Аноним, 23:11, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Ну, так и будьте реалистом, а не пустословом Устранение ошибок отнюдь не означ... весь текст скрыт [показать]
     
  • 4.72, arisu, 23:11, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    > Тогда почему ежемесячно обновляются ядра, не подскажешь?

    ChangeLog знает.

     
  • 1.56, Аноним, 21:13, 25/02/2012 [ответить] [смотреть все]  
  • +/
    Пока писал ответ, тред удалили Фактически, да Объясняю подробнее не все комит... весь текст скрыт [показать]
     
     
  • 2.59, жабабыдлокодер, 21:43, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Положим, студентов никто и не допускает ни до ядра и до СУБД Там есть специальн... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.61, Аноним, 22:24, 25/02/2012 [^] [ответить] [смотреть все]  
  • +/
    По собственному опыту могу сказать, что в большинстве случаев, т н ревью кода... весь текст скрыт [показать]
     
  • 3.196, anonymous vulgaris, 06:18, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Си появился поскольку у авторов было желание запустить убогий простаивающий в уг... весь текст скрыт [показать]
     
  • 1.75, pavlinux, 23:22, 25/02/2012 [ответить] [смотреть все]  
  • +/
    http://softwareintegrity.coverity.com/coverity-5-5-webinar-registration.html

    Вот скажите, как вон та песта может быть "... over 15 years of technology marketing experience with expertise in code governance, static analysis and automation"

    Тётке, от силы, лет 27-28 ... ну пусть даже  35!!!


     
     
  • 2.76, Карбофос, 23:28, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    в 12 лет сломала комп у брата. вот как!
     
  • 2.78, arisu, 23:31, 25/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +4 +/
    это же Director of Product Marketing они органически неспособны правду говорить... весь текст скрыт [показать] [показать ветку]
     
  • 2.188, Serge, 23:26, 26/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    чувак, тетке около 45.
     
     
  • 3.189, arisu, 23:28, 26/02/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    а на вид ягодка сразу видно 8212 ни для честно не работала, только трудовой ... весь текст скрыт [показать]
     
     
  • 4.214, Sergey722, 13:10, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    >а на вид ягодка

    ягодка опять

     
  • 3.192, pavlinux, 03:28, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    > чувак, тетке около 45.

    Фотошоп рулит!?

     
  • 1.163, Аноним, 15:46, 26/02/2012 [ответить] [смотреть все]  
  • +/
    Срач java vs Qt и C# vs Qt уже был?
     
     
  • 2.164, arisu, 15:53, 26/02/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    > Срач java vs Qt и C# vs Qt уже был?

    неа, можешь начинать.

     
     
  • 3.166, Аноним, 16:06, 26/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Начинаю Библиотека Qt - это неплохая поддержка для голого С Сравнивать C ... весь текст скрыт [показать]
     
     
  • 4.167, arisu, 16:14, 26/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    ну и с чем тут спорить ты что-нибудь провокативное вкидывай ... весь текст скрыт [показать]
     
     
  • 5.199, вкидывают, 09:21, 27/02/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    PHP - глобальное и надежное решение для серьёзного бизнеса, а на сипипи пишут л... весь текст скрыт [показать]
     
     
  • 6.223, arisu, 14:08, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    уйди, мы тут о Qt ... весь текст скрыт [показать]
     
  • 6.227, тоже Аноним, 15:49, 27/02/2012 [^] [ответить] [смотреть все]  
  • +/
    Этот вентилятор уже так забросали, что он давно перестал крутиться...

     
  • 4.212, anonimous, 12:06, 27/02/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    Сравнивать языки принято с языками. а библиотеки с библиотеками. Выше было.
     
     
  • 5.222, arisu, 14:07, 27/02/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    ок тогда от жабы отдираем JVM, а от c Net никак иначе это 8212 рантаймов... весь текст скрыт [показать]
     
  • 1.237, stimpack, 19:06, 28/02/2012 [ответить] [смотреть все]  
  • +/
    почему не проанализировали plan9? это ж цитадель высокой мысли и идеальных решений, настолько идеальных, что аж сферических. пишут ли там с ошибками? (прости господи меня за такое вольномыслие)
     
  • 1.239, Аноним, 01:04, 03/03/2012 [ответить] [смотреть все]  
  • +/
    Иногда такие быстрые исправления ошибок просто пужают Вон, несколько лет наза... весь текст скрыт [показать]
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor TopList