Команда PVS–Studio, которая разрабатывает коммерческий статический анализатор C/C++ кода, проверила исходный код Haiku и опубликовала статью (часть 1 (http://www.viva64.com/ru/b/0317/), часть 2 (http://www.viva64.com/ru/b/0318/)) с обзором подозрительных участков исходного кода. Начиная с ревизии hrev49129 (пакетное обновление OS) командой разработчиков Haiku начато устранение выявленных ошибок. В ядре OS ошибок не выявлено.
Из других открытых проектов, которые недавно были проверены в системе статического анализа PVS-Studio можно отметить: САПР FreeCAD (http://www.viva64.com/ru/b/0322/), игровой движок Godot (http://www.viva64.com/ru/b/0321/), текстовый редактор Vim (http://www.viva64.com/ru/b/0311/), офисный пакет LibreOffice (http://www.viva64.com/ru/b/0308/), ядро Linux (http://www.viva64.com/ru/b/0299/), библиотека NSS (http://www.viva64.com/ru/b/0286/), пользовательское окружение KDE (http://www.viva64.com/ru/b/0283/), VirtualBox (часть 1 (http://www.viva64.com/ru/b/0281/), часть 2 (http://www.viva64.com/ru/b/0282/)), PHP (http://www.viva64.com/ru/b/0277/), Asterisk (http://www.viva64.com/ru/b/0276/), GIMP (http://www.viva64.com/ru/b/0273/), Wine (http://www.viva64.com/ru/b/0272/), Firefox (http://www.viva64.com/ru/b/0262/), Qt (http://www.viva64.com/ru/b/0251/), OpenSSL (http://www.viva64.com/ru/b/0250/), nginx (http://www.viva64.com/ru/b/0246/) (ошибок не найдено!).URL: http://www.haiku-os.org/news/2015-04-22_analysis_haiku_opera...
Новость: http://www.opennet.me/opennews/art.shtml?num=42144
"видишь ошибки в коде? и я не вижу, а они есть..."
>PVS–StudioЧто-то вы активизировались последнее время. Куда ни глянь -- ваша реклама. Что-то случилось? Или должно в скором времени случиться?
Ребята рекламируют свой продукт проверяя исходный код открытых проектов. Разве это плохо?
стоит добавить, что это не просто запуск порверки, но и много ручной работы по разбору
Мазохисты...
Угу, они еще и UEFI не запилили... http://www.youtube.com/user/1wqwqdedw
Это самая ПОЛЕЗНАЯ реклама, которую я только видел. Может быть менеджеры других компаний возьмут на прицел данную технику и тогда мир станет немного светлее...
Проверка открытых проектов бесплатно, а закрытых за денежку. Одобрямс.
Автор новости — энтузиаст от Haiku, а не представитель компании, выпускающей PVS-Studio.
> Что-то вы активизировались последнее время.Хорошие ребята. А что слышно стало -- так это ж тоже хорошо, я вон о них узнал при личном столкновении то ли на ADDConf, то ли на ещё какой конференции...
> Хорошие ребята....но работенку делают грязноватую. Потому что эта их софтина - не только проприетарная, но и работает только под виндой. А даже упырь Баллмер - понимал, что developers, developers, developers.
И эти "хорошие" ребята как-то так способствуют залочиванию разработчиков на винду.
Проверьте пожалуйста ReactOS
Думаете, они найдут код среди ошибок?
С разморозкой http://www.viva64.com/ru/a/0076/
Я конечно за отечественные продукты, но есть и другой статический анализатор он тоже нашими спецами разрабатывается и к тому же бесплатный
Это какой же? CPP-Check?
Какой? Можешь уже не стесняться -- тред-то уже по факту рекламный. Может то, о чём ты говоришь, ещё и на нормальных ОС работает.
> Какой? Можешь уже не стесняться -- тред-то уже по факту рекламный. Может
> то, о чём ты говоришь ещё и на нормальных ОС работает.Вам наверное он не подойдет, дабы он работает только с Си: Berkeley Lazy Abstraction Software Verification Tool (BLAST)
Сейчас его поддерживает ИСП РАН
>> Какой? Можешь уже не стесняться -- тред-то уже по факту рекламный. Может
>> то, о чём ты говоришь ещё и на нормальных ОС работает.
> Вам наверное он не подойдет, дабы он работает только с Си: Berkeley
> Lazy Abstraction Software Verification Tool (BLAST)
> Сейчас его поддерживает ИСП РАНСпасибо за информацию
дабы - это чтобы, а не потому что.
"потому что" - это ибо ))"чтоб нонче да надысь перепутать - нет" (с)
Ядро без ошибок и подозрительного кода - факт примечательный. Линукс ядро оказалось весьма подозрительным кодом.. http://www.linux.org.ru/news/kernel/11210932
> Ядро без ошибок и подозрительного кода - факт примечательный. Линукс ядро оказалось
> весьма подозрительным кодом.. http://www.linux.org.ru/news/kernel/11210932ЧСХ, там Coverity гоняют чартерными рейсами, на каждое ядро. И PVS гоняли. В общем там подозрительного для статических анализаторов кода здорово поубавилось.
Ооо, оно (Haiku) даж работает http://www.youtube.com/user/1wqwqdedw
конечно.
у многих уже начиная с R2 на ноутах стоит.
правда с частью железа(принтеры итп) оно дружит слабо, но в целом - вполне работоспособно.
лучшая десктоп-Ось за последние 15 лет.
qnx все-ж в эмбеддовке место.
стрекоза пока молодовата а seL4 профита дает пожиже чем любой из них, пусть и привычен многим.
Не, чувак, я, конечно, тоже беось люблю, я с нее и начинал (мой первый около-юникс), но сейчас это - маргинальщина маргинальная.
Дров нет, софта нет, нихъя нет, в мультиюзерность не может, зато технологически интересная, да.
"лучшая десктоп-Ось за последние 15 лет" она была 15 лет назад.
Конечно, желаю всех благ проекту, но Линух ей уже не догнать, несмотря на все его болячки.К слову, qnx прилично пашет в одной блэкберриевской трубке.
Ну, гайка-то, по крайней мере, работоспособна в отличие от всяких хурдов и прочих реактосов.
Мм-м. Да, согласен.
> Ну, гайка-то, по крайней мере, работоспособна в отличие от всяких хурдов и
> прочих реактосов.И правда, свежий зомбячок, резвенький. Но - гвоздями прибит к десктопу, разработчики страдают махровой некромансией и таскают ископаемый gcc, ради полутора не менее ископаемых проприетарных программ, которые даже купить легально уже невозможно. В общем, desktop-only система с самобытным апи, без поддержки софта и оборудования и с переклином на совместимость с какй-то проприетарной архаикой - это как чемодан без ручки.
> Но - гвоздями прибит к десктопуУ неё, с одной стороны, великолепный десктопный планировщик ЦП, с другой стороны, совершенно невозможно поставить мозаичный оконный менеджер.
> У неё, с одной стороны, великолепный десктопный планировщик ЦП,С другой стороны я и на другие системы не жаловался. В плане именно планировщика ЦП. А всякое там IO, которое обычно намного более злободневно - его вообще планировать сложно, особенно для механических дисков всяких.
В смысле - я даже и не помню момента чтобы у меня например DE в проц упиралось и как-то недополучало бы ресурсы проца.
> с другой стороны, совершенно невозможно поставить мозаичный оконный менеджер.
...или обрубить на...й DE, если оно мне не упало. Случаи бывают разные. В том числе - неинтерактивные/автоматические применения, эмбедовка, etc. Это мне что - разучивать дюжину разных осей на разные задачи? Да провались оно все, вертикальное масштабирование рулит.
> С другой стороны я и на другие системы не жаловался. В плане именно планировщика ЦП.Ну, Винды, даже NT - это характернейший пример плохого планировщика. Под Линуксом тоже изредка лаги получаются.
> ...или обрубить на...й DE, если оно мне не упало.
Она всё-таки десктопная. Поэтому отрубание DE и графики - это не то, на что она рассчитана. А вот смена DE на более удобную для себя - это совершенно в рамках десктопного использования.
Софта достаточно - Qt 4 , Qt 5, openjava и нативный (gcc4 и gcc2). В официальном гибриде прекрасно работают бинарники, собранные и gcc4 и gcc2. Репозитории с пакетами имеются. Обновление ревизии ос пакетным менеджером с инета - http://www.youtube.com/user/1wqwqdedw для наглядности...
Сколько раз ты эту ссылку в этом треде кинул?
Никто не сомневается, что ось крутая. Но она сейчас в реальном мире, где людям окромя игр с микроядром, надо работу работать, не настолько полезна. Вот напиши мне на гайке курсовик или отчет какой. Не получится, потому что вменяемого офиса нету. (и не надо про ThinkFree office, ибо проприетарщина, несчетово) Отретушируй фотографию/нарисуй что-нибудь с планшета - тоже пролетаем, гимпа нема, да и планшет не понимаем.И это десктопные задачи, для которых беось и была создана. Лет 25 назад.
Не, для каких-нибудь микрозадач оно подходит хорошо: ест мало, программам оставляет ресурсов много - у меня на ней пункт видеонаблюдения работает, к примеру. Но пока до универсальности (а значит, полезности) Линуха - как до Луны пешком.
http://www.youtube.com/watch?v=NMSkGSdicjM
http://www.youtube.com/watch?v=h3rg1RLAxGU
> http://www.youtube.com/watch?v=NMSkGSdicjM
> http://www.youtube.com/watch?v=h3rg1RLAxGU
> ThinkFree office
> Wonderbrush
> Еще что-то такое былоПроприетара - несчетово.
> Старые КДЕшные проги
Говно мамонта.
> Все, что на Java
Фу.
Ну а так, да, мы можем смотреть картинки и качать торренты, ну и малевать в подобии пейнта. Это не спектр задач современного десктопа.
Ну а так, да, мы можем смотреть картинки и качать торренты, ну и малевать в подобии пейнта. Это не спектр задач современного десктопа.А тут поподробнее, плиззз.. Про спектр задач современного десктопа. ;))
> qnx прилично пашет в одной блэкберриевской трубке.Вот только поскольку "микроядра не тормозят" - блэкберри были вынуждены брать дорогое топовое железо, долго сношаться с управлением питанием, а результат... если Нокию пришлось экстренно саботировать, то Блэкберри и сам не против околеть.
> К слову, qnx прилично пашет в одной блэкберриевской трубке.от qnx там мало чего есть.
не, неправда.
щас в таком состоянии - разве что маргинальные штуковины вроде ReactOS, eCommstation(текущий форк OS/2), Minix и прочих чудесатых ОС-ей.
а Haiku - вполне юзабельно. и рядом корпоративных инженеров - используется на личных коробках и ноутах, во внеработчее время.
QNX много где пащет. от кучи спутников и атомных подлодок до магистральных маршрутизаторов циско, управления рядом АЭС, транспортом и производством до смартфонов RIM(но это недавно. уже после покупки оными QNX.)
Haiku - не надо догонять Linux.
это Linux - натужно пытается дотянуться до ее уровня с MacOS-ю.
> а Haiku - вполне юзабельно.Никто не спорит о принципиальной юзабельности. Как я уже говорил, мне она самому нравится.
> и рядом корпоративных инженеров
Довольно небольшим рядом, но это не важно.
> используется на личных коробках и ноутах, во внеработчее время.
Ну если так, то во внерабочее время оно может использоваться хоть Васей Пупкиным, это не имеет значения, насколько он копроративный инженер. Я веду речь о жестоком холодном реальном мире.
А то получается как у бздунов - костьми ляжем за бздю, но работать почему-то все равно продолжаем на винде.> Haiku - не надо догонять Linux.
> это Linux - натужно пытается дотянуться до ее уровняSay what?
Не, я опять же понимаю, что мы маленькие и гордые, но реальность, бессердечная сука, путает все карты.> с MacOS-ю.
Вот уж чего даром не надо, если честно. Кроме классного дизайна интерфейса (и то, до версии Mavericks - потом уже началось плоское нечто на любителя), в макоси нет ничего волшебного, оно еще более прожорливо и тормознуто чем эта ваша винда.
> это Linux - натужно пытается дотянуться до ее уровня с MacOS-ю.Дружочек, это надо писать отдельным постом, шрифтом побольше и чтоб переливалось.
Ну, то есть не на этом форуме.
Где новость про релиз нового Опенка, что за беспредел
Ты еще не составил - вот и нет.
кстати, а где-то была статейка по томе, как Эльбрусы типа E2K сканировали "эталонный х86 код" на ошибки и что-то там нашли... это было в какой степени "правда"?
> в какой степени "правда"?Это наверное не в степени, а в газете.
> кстати, а где-то была статейка по томе, как Эльбрусы типа E2K сканировали
> "эталонный х86 код" на ошибки и что-то там нашли... это было
> в какой степени "правда"?Читайте про контекстную аппаратную защиту реализованную на Эльбрусах .Контроль границ данных,контроль границ кода,контроль соответствия данных и кода,контроль интерфейса функции
и т.д . Часть защиты реализовано чисто аппаратно ,а часть аппаратно-программно ,с обязательной поддержкой со стороны операционной системы .Приложения должна быть скомпилированы на специальной версии компилятора с поддержкой атрибутов защиты .И в рамках этих работ удалось выявить ряд ошибок для х86 кода .Подробно описано в книге ISBN 978-5-459-01697-0 (одно время выкладывали на родном сайте компании «МЦСТ» ) -Микропроцессоры и вычислительные комплексы семейства «Эльбрус» .
Вот, например, ссылка на статью В.Ю.Волконского «Безопасная реализация языков программирования на базе аппаратной и системной поддержки» - http://mcst.ru/doc/SecureLanguagesImplementation-req_rus-200... . Возможно, что есть и другие статьи, но эта - первая в выдаче гугла.С точки зрения вашего вопроса наиболее актуален раздел «3. Перенос программ в среду безопасной реализации языков программирования», в котором перечислен ряд проблем проявившихся при переносе программ на Эльбрус. Часть этих проблем это просто традиционные ошибки - использование неинициализированных переменных, выход за границу массива, сохранение указателей на локальные переменные в глобальные данные и т.п. Эти ошибки скорее всего обнаруживаемы с помощью статического либо динамического анализа кода на традиционных архитектурах, они время от времени проявляются в падении программ или получении неверного результата.
А часть проблем обусловлена тем, что в головах программистов довольно крепкое представление о том, что адрес в памяти - это просто номер ячейки. Это важный принцип архитектуры фон Неймана, и большинство платформ не противоречат такому представлению. Но Эльбрус радикально отличается в этом вопросе, там указатель является сложным объектом, и преобразование указателя в число или указателя на данные в указатель на функцию затруднено или невозможно.
эта часть проблем на традиционных x86/x86_64 никак не проявляется, но IMHO она вполне покрывается статическим анализом кода в стиле PVS-Studio. Напишите авторам студии, и если сумеете их заинтересовать то получите VivaElbrus ;)