Главная

сборка Haiku без режима отладки

Приветствую сообщество!
Я установил на одном железе BeOS R5 и Haiku последней сборки (с официального сайта проекта) на два соседних раздела.
Что бросилось в глаза при работе — так это то, что латентность BeOS гараздо меньше чем у Haiku.
Мне попадала на глаза информация что Haiku сейчас собирают с режимом отладки ядра (по видимому именно из–за этого такая высокая латентность у Haiku).
И по этому поводу у меня несколько вопросов:
1. Латентнось этих систем на одном и том же железе так выразительно отличается только по причине сборки одной из них с режимом отладки ядра; или все–таки по причине того что ядра систем по своей сути есть разные?(Насколько я знаю — то исходники ядра BeOS открыли не полностью или что–то с правами или лицензиями… Ткните носом где об этом можно прочитать — я не нашел или нашел мало и скудно материала(в популярном стиле)… а мне что бы по углубленней почитать)
2. Есть ли альтернативные сборки Haiku без режима отладки (URL — если можно), а то на моей архитектуре x86–64 где я под линухом пыталься собрать из исходников — сборка не получилась(вероятнее из–за архитектуры CPU)(да и это всеравно с режимом отладки — так как я не знаю в каких конфигах или какими опциями это отключить)

Простите мою сумбурность.
Благодарствую за ответы!

Создал вот эту

Создал вот эту новую тему в форуме для начинающих — но ее ниоткуда невозможно найти…
Только отображается среди «Новых коментариев» и «Активные темы форума»…
Что я не так делаю?
Пользуюсь FF иногда выпадает вот такое в тексте страницы:


* warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: 'files/images/beos505onbeos505.jpg' is not a valid JPEG file in /home/u148242/qube.ru/www/includes/image.inc on line 326.
* Unable to create scaled Thumbnail image

Ну, во первых

Ну, во первых Хайку пока даже не альфа (т.е. не все запланированные функции внедрены), оптимизация кода будет позже. Архитектура x86–64, по крайней мере для R1 непредвидется (на сколько знаю, хотя, если ктото за это возмётся – почему бы и нет).
А вообще цель Хайку, сделать клон БеОС, со всеми преимуществами последней. Посмотрим как это всё будет.
Почитай:
http://qube.ru/articles/geek_os_part4

Ну конешно же,

Ну конешно же, перед тем как что–то написать тут — я почитал бОльшую часть статей на этом ресурсе (и на других, что удалось найти), вчасности и эту часть статьи… (Но это все популярные статьи — мне бы что–то посерьезней на счет архитектуры ядра…) Или может на wikipedia кто–то распишет?…
Знаю что только в R2 намечают поддержку 64–бит…
Как на мой взгляд, если Haiku–клон, то клон должен быть практически идентичным своему оригиналу — так вот на счет ядра (и по теме), все–таки, насколько оно отличается от оригинального? Возможно различия в латентности являются причиной различия в архитектуре ядер, а не режимом отладки? (Если эти оси реалтайм, то помоему в них обеих есть такой режим по умолчанию)
По быстродействию BeOS — складывается впечатление что базовые функции ее ядра написаны на asm–e, заглянув в исходники Haiku — вижу в основном C++(который впринципе дает медленней код, даже чем код написанный на простом C — не считаю эту тему — как тему для дискусий — считайте этот вывод — результатом моего жизненного опыта (но для объектности — C++ впринципе есть необходимость))
Знаю что на этом ресурсе существуют продуктивные разработчики софта, может есть еще и разработчики ядра?
Я был бы признательным — что бы некоторые из них уделили время давая ответы на мои вопросы…
Данную ОС (и ее клон как последсвие) — я для себя нашел давно, но к сожалению (что касается BeOS) слишком поздно…
6–лет назад передо мной встал выбор ОС как основной (не буду объяснять тутошним обывателям по каким причинам ;)), бардак и монстроподобность в других ОС меня не привлекает! И последние ~5 лет просидел на FreeBSD — там бы и остался, но для того сообщества я приносил крайне мало пользы (меньше чем мог бы) по пичине закрытости/медлительности/чрезвычайной консервативности/…общества основных разработчиков (складывалось впечатление что у них совсем другие заботы, кто знает — может так и есть?…) и языкового барьера — вся моя польза — это пару паччей, пару писем в рассылки (потому что реакции НОЛЬ) и консультации на форуме — и результаты с той «помощи» появились (в CURRENT) только спустя 2 месяца как я уже перескочил на UbuntuStudio… Такая оперативность не радует, при условии что у самого проекта FreeBSD впринципе тоже жизнь не сахар…
Потом я вновь заметил активность в темах BeOS/Haiku и думаю наладить кое какие контакты с рускоязычной частью сообщества/разработчиков… Может с этого что–то и выйдет…

Весь сахар не в

Весь сахар не в том что для тебя может сделать сообщество! А что ты сам можешь сделать. хорошо когдо тебя слышат!
Пардон, я пьяный в доску…

>Весь сахар

>Весь сахар не в том что для тебя может сделать сообщество! А что ты сам можешь сделать. хорошо когдо тебя слышат!
>Пардон, я пьяный в доску…
Завтра перечитаете :))))) Я именно об этом и говорил :)))

Ядерных

Ядерных разработчиков в гайке вообще пока не много. Вероятность встретить его тут исчезающе мала. Так что узнать что либо путь вам пока один — читать исходники и задавать вопросы в профильном мейл–листе непосредственно у них. :–(

Не думаю, что именно Цпп–шность кодов ядра дает эффект существенной потери производительности. Основная потеря идет в критических местах — а их предусмотреть и локализовать не так уж и сложно при достаточном опыте. А там уж все едино на чем функция написана — линкеру на замангленые имена плевать. Кстати беосина была написана отнюдь не на асм–е — так говорят люди, что видели её сорцы. ;–)

Консервативность БСД — это их способ обуздать энтропию. В гайке с этим проще — пока есть люди способные держать почти все детали реализации в голове — приметить полезный патч можно буквально в течение нескольких часов — дней.

Я бы на вашем месте спросил в haiku–development[собако]freelists.org по поводу списка задач в области ядро–строительства. Авось чего и приглянется. Ну и свой послужной не забудьте при том представить. Система развивается и много просто ещё не сделано.

Удачи!

Все бы хорошо :(

Все бы хорошо :( но языковой барьер — увы… Я конечно что–то могу вразумительное написать со словарем, и в принципе думаю что меня поймут — но вот ньюансы технического сленга — думаю что «мая твоя не понимайт» получится…:) я в надеялся что есть разработчик с русскоязычной стороны, который тут обитает и пообщаться на прямую без «транслитерации» :)
На фрюшке впринципе было — вел переписку с кубинцем — на «английском» -думаю мы друг друга поняли раз его проблема разрешилась — но такой тип разговора не поможет при изъяснениях в алгоритмах и т.п. …

По поводу кода — если писать быстрый код — то тогда нечево доверять компилятору — это правило ниразу не подвело никого… при том при всем что в среде разработчиков gcc существуют довольно серьезные проблемы, касаемо компилятора, которые не разрешины и на теперяшний момент…

По моему мнению — мои заслуги перед БСД ;) есть ничто инное как множество в епсилон окрестности нуля :) — больше популяризации чем участия в создании частей системы…

Тоесть я так понимаю что здесь в основном пользователи и программисты BeOS?

Глупости.

Глупости. Барьер только в голове. Понимаете что вам пишут? Значит и они поймут что вы им напишете. Язык — это как велосипед. Пока не сядешь — не поймешь как ехать. Главное начать.

Беосина собиралась дремучим гцц 2.95. И ей это не мешало бегать, как сами говорите.

Под заслугами имелись ввиду опыт работы, навыки и предпочтительная сфера деятельности. Не волнуйтесь на дверь не покажут. :–)

>>Глупости.

>>Глупости. Барьер только в голове.
Прищурив глаза, соглашусь:)
>>Беосина собиралась дремучим гцц 2.95. И ей это не мешало бегать, как сами говорите.
Это была версия во времена FreeBSD 4.11 если мне не изменяет память — и была достаточно удачная на счет оптимизации кода (mmx/sse/3dnow–там всякие) потому как последующие версии компиляторов начали уступать в качестве генерируемого кода (началась мутье с архитектурой х86 — и стали компилятор рихтовать под это, причем не влучшую сторону) а потом Core Duo там всякие начались, NUMA и тут гцц–шка совсем сплоховала — все это не противоречит тому что БеОська резвая (если конечно на 100% доверять человеку что асм–а в ядре БеОсь нету) но думаю что не в компиляторе камень предкновения в таком разительном отличии в латентности…
>>Под заслугами имелись ввиду опыт работы, навыки и предпочтительная сфера деятельности. Не волнуйтесь на дверь не покажут. :–)
;) Это хорошо что они дружелюбные… Было бы еще у них время на ввод в курс дела и на ответы на глупые вопросы…;)
Пересматривал тамошний форум нашел белоруса, желающего принимать участие в разработке ядра под ником “kvark” — может удастся списаться и скооперироваться…
Кстати заглянул в репозиторий исходников — довольно НЕ резво там проходят изменения — в основном хедеры подчищают… Что не радует(в смысле скорости подготовки релиза)

Подпишитесь

Подпишитесь на мейл–лист с нотификациями о коммитах. И вправду не обильно идет. Насколько я знаю сейчас идет доделка до пре–альфы. Ну если случится что задачу вам выдадут — то, думаю, уж им и придется вводить в курс дела, ага. И на вопросы отвечать. ;)

Мне попадала

Мне попадала на глаза информация что Haiku сейчас собирают с режимом отладки ядра (по видимому именно из–за этого такая высокая латентность у Haiku).

Присоединяюсь — поясните плизз, кто знает, что это за режим отладки и как от него избавиться?

Нашел

Нашел где отключить режим отладки ядра!
В файле:
…/trunk/build/config_headers/kernel_debug_config.h
Нужно поменять
#define KDEBUG_LEVEL 2
на
#define KDEBUG_LEVEL 0
и все пересобрать…
Это может кто–то сделать и выложить image системы, что бы стянуть попробовать — а то у меня со сборкой из исходников проблеммы на моей платформе х86–64…

Так там все

Так там все KDEBUG_LEVEL 2 и KDEBUG_LEVEL 1 менять на KDEBUG_LEVEL 0?
Или только на 8ой строке?

Вообщем

Вообщем скомпилил, поменяв
#define KDEBUG_LEVEL 2
на
#define KDEBUG_LEVEL 0

на 8 строчке.

Проверил, вроде и шустрее на глаз, тестов не делал.
Собирал на Haiku, сначала по дефолту, потом с этим изменением, правда комп при сборке раз застыл (когда собирал с поправкой, на месте с какойто сата), возможно перегрелся проц, так как разогнан, замедлил и собралось всё.

имидж с 29059 (зип в 34Мб):

http://www.mediafire.com/?3qt0jxajxme

По логике

По логике то только вот это нужно было менять:
#define KDEBUG_LEVEL 0
Потому что чуть выше пишут:
0: Disables all debug code that hasn't been enabled otherwise.
В других строках там символы подчеркивания присутствуют в определениях….
Хотя тоже нужно думать — что значит включенный режим отладки другим способом?
Возможно и другие строки нужно тоже править (по поводу режима отладки)
Без отладки конечно по шустрее будет! ;) Вот только при крахе системы ребут гарантирован!
Спасибо за сборку!

З. Ы. А тут всегда так нелюдно?

>нелюдно? бывает

>нелюдно?
бывает…

:(

:( Нда-а-а-а–а… Все–равно не то! Имеется ввиду что BeOS себя быстрее ведет: раза в 3 быстрее загружается, реакция на действие тоже раза в 1,5 быстрее….
Пару демок одновременно загрузил в Haiku — комфорт в работе сразу пропал! Не справляется с нагрузкой. При этом в BeOS — точно так же загрузил — практически не заметил разницы!
Видать действительно Haiku это не клон а с нуля написана… Жалко что принципы ядра BeOS утрачены в Haiku — потому как не могут так сильно отличатся оси (по разного рода показателям) на одном/подобном/клонированном ядре…
В линухе на разных дистрибутивах/на одинаковом железе — отличий производительности в разы не наблюдается — потому как ядро одно и то же -> следует вывод — в Haiku — не клон ядра BeOS а непонятно какое, но другое гибридное микроядро…

Может кто–то поделится информацией если я не прав?
Я пока не нашел…

A у меня

A у меня наоборот, Haiku грузится и выкключается заметно быстрее BeOS (5.05), дело в железе, похоже.
А что Haiku писана с нуля (ядро основано на NewOS) – не секрет, ведь исходники BeOSи так и небыли открыты (кроме Tracker и нескольких мелочей да демок). Что Haiku имеет проблемы с распределением ресурсов и я заметил, да – на BeOSи всё плавно и складно, никаких тормозов. Надеюсь эта проблема разрешится, так как Haiku, хоть и не очень быстро, но изо дня в день прогрессирует!
По крайней мере надежда есть.

Вот кто–то

Вот кто–то что–то говорит по этому поводу:
http://www.linux.org.ru/view–message.jsp?msgid=323969#324733
Да! Я все понял — ядра у них совершенно разные — от этого и такой разный «темперамент» систем!
Мне уже кстати попадалаь информация что ядро Haiku основано на NewOS — почему то вылетело из головы… Все как то акцент идет на BeOS совместимость — вот и запудрило мне мозги…
А я то думал что у Haiku микроядро — а оказывается нет! Это плохо!
Значит Haiku не идет по пути BeOS — не радует…
Вот досада — а я уж обнадеялся на счет Haiku… :(((

Значит Haiku

    Значит Haiku не идет по пути BeOS — не радует…

Не по пути? Вообще–то ядро NewOS написано инженером из Be, Inc.

Ну и что?

Ну и что? Это ничего не значит…
Один инженер — это не весь коллектив, который BeOS создавал…
Соответственно он (наверняка) писал NewOS с субъективными изменениями…
И плюс ко всему потом еще и созлатели Haiku тоже что–то внесли… И так далее….

Для чистоты

Для чистоты акспС–рыменту надо бы гайку тогда уж с дрямучим дев–релизом беосины времен начала эпохи сравнивать. Младенец, конечно потенциально может разговаривать на любом языке, но требовать от него в его возрасте поддерживать беседы на тему философии Юнга на родном языке автора — будет несколько самонадеянно с нашей стороны.
Реализация в беосине тех базовых вещей с которыми я сталкивался в процессе кропания под нее драйверов — отвратительна. Хороши в ней были идеи и спартанская самодостаточность компонентов. Что впрочем, как и всякая идея возведенная в абсолют — вешь малоупотребимая в реальной жизни.

Ничего себе

Ничего себе «младенец» — с учетом срока разработки Haiku…
Чуть раньше разве что FreeBSD создалась…(к тому что Haiku тоже на базе других ОС растет)

Впринципе я учитываю «поправку на ветер»…

Идеология — «выжить любой ценой» (что касается Haiku) — утопичная; как и «бинарная совместимость с …»… А уже из идеологии строится тип ядра и так далее…
В данном случае просматривается безсистемный подход у разработчиков Haiku.
Ни в коей мере не являюсь противником Haiku — являюсь противником безсистемности…
А разработчики заслуживают уважения!

Наткнулся на разногласия в разных статьях…
В разных источниках BeOS микроядерная, в других гибридная модульная…
Какая–то путаница в терминологии :(
Информация хотя бы:
http://ru.wikipedia.org/wiki/Ядро_операционной_системы
разделяет эти типы ядер…

Я споймался на «микроядре» — думал что BeOS на таком типе ядра (с учетом структуры ядро/серверы и многопоточность/нити) именно по этой причине меня и привлекла BeOS. Теперь чем дальше читаю — тем больше не понимаю — это что какая–то дезинформация идет :( В старых статьях пишут одно а в новых (в последних из них) пишут другое… Или всетаки зависит от версии ОС (BeOS) — ядро у нее вообще менялось или только развивалось?
Ну про Haiku я написал выше — тоже на микроядре поймался…
Вобщем неважно — но то как себя ведет BeOS мне нравиться, а тенденции в Haiku — че–то как–то не очень… Конешно возможно это из–за того что проект в начале своего развития — но если бы где найти (опять повторюсь) описание устройства ядра Haiku — хоть блок–схему, хоть словесное описание — а то разработчики что–то пишут (код ОС)- а идеологические векторы (кроме бинарной совместимости) не описывают…
Вобщем опять какая–то суета у меня сложилась :)

Вы

Вы не сравнивайте MIT–овских преподов с кошаками из зоопарка имени Гасье. FreeBSD 2.0 это уже 1995–ый, a Гайка 1.0 — пока только к Рождеству обещается, причем неизвестно какому. Там команда а тут один Аксель с друзьями. Никто из разработчиков беосины в проекте не засветился. Исходники беосины не используются. Говорить о преемственности и засчитывать срок жизни беосины в родословную гайки посему не совсем корректно.
Нет никакой бессистемности — цель воссоздание системы на уровне R5. Всё. Несогласные и энтузиасты–генераторы идей идут на специально созданный для этих целей glass elevator. Дабы не мешали — ибо нету от них пользы пока.
Вядро — вядро… Далось вам это вядро. :–) Говорю же, беосное сообщество — это кошачий цирк имени Гасье. Каждый сам себе звезда. Какие вектора? Какие блок–схемы? :–) Вы не на экзамене — добро пожаловать в реальный мир! Чуете как горячий ветер саванны звенит в шпорах ваших сапог? Кстати на канале #haiku на freenode постоянно живет некто geist — по слухам это и есть разработчик вядра NewOS. Заходите — спрашивайте! :–)

Интересно

Интересно вы излагаете свои мысли :) — Это улыбает!
Где–то в недрах души — я конечно же понимал что если создается что–то новое — то это уже не то что было ранее ;) (Это я на счет Haiku)

Ну вы хоть признаете то, что от типа ядра зависит ментальность программиста?
Если вядро :) такое, какое я уже видел — и видел к какому монстроподобию это все приводит — то желание под него продолжать развиваться/писать/лепить костыли — как–то пропадает… А оставаться там только по той причине что там бОльше поддержки чем удругих платформ (не вдаваясь в крайности конечно)?! Вы были правы на счет энтропии — так вот в некоторых моментах идет больше траты энергии на «тепло», на споры вокруг идеологии (а не на полезную работу)… В мире где есть множество возможностей и вариантом — нужно не спорить а просто перейти в другую эволюционную ветвь развития.
Вот я эту ветвь и ищу. А поскольку я до конца не знаю тип/архитектуру нового ядра Haiku — поэтому тут и задаю дотошные вопросы… :) что бы получить новую информацию…
Конечно — лучше задавать вопросы разработчикам — но у них и так много забот — если бы они хотели привлеч больше разработчиков — то более систематично представили документацию или спецификации вядра, а не ссылки на БиОС…
А то так получается писать код в слепую — смотря в исходники сложновато. Это всеравно что дезасемблировать бинарники/драйвера и разбираться в их алгоритме или особенностях аппаратной части, которой они управляют…
Для этого придуманы спецификации — к ядру они тоже имеют место быть :)
А если девелоперы Haiku еще не определились с типом ядра — то это уж совсем не радует! И к тому же если это еще и «цирк» как вы выразились — то без фундаментального подхода не обойтись — ведь BeOS разрабатывали технари! Поэтому у них и получился шедевр!

Кстати проблема идеологии ядра через небольшой промежуток времени станет ОЙ как актуальной и для мира линуха (уже сейчас идут споры и дискуссии) — этот процес откладывается на потом тем дальше — чем дольше разрабатывалась идеология системы изначально (по правилам проектирования, главное что бы процесс проектирования не вылез за рамки актуальности разработки). Вот например перед тем как приступить к созданию FreeBSD — 10 лет в Беркли разрабатывали алгоритм на бумаге, только потом приступили к коду! Зато теперь запаса прочности еще на долго хватит! :)

Ну да ладно…

Спасибо за информацию!

З. Ы. Вот еще нашел кое что о BeOS — может кому–то будет интересным:
http://bubble.hitech.org.ru/content/1/vstavka1.html

Меня радует,

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

Если по делу: ментальность программиста вряд–ли определяется тока ядром. Скорее ядро, а точнее собравшаяся вокруг него тусовка и порядки в ней определяют останется некий конкретный программист с ними работать или нет.

Ну уж прямо таки и вслепую. Кросс–референс вам в руки. Да я бы и не сравнивал листинг дизассемблера с открытым кодом. Второе на порядок проще читать, однако. Плавали, знаем, даже целый драйвер написали по мотивам чтения листингов дановского usb_acm. :–) Исходники есть самая достоверная документация — самая актуальная. Спека может врать и не соответствовать. Исходники в таком случае просто не будут работать.

Даташит на аппаратную часть вам — ага. А драйверок исключительно по мотивам лога усб трейсера не желаете написать? :–)

Несомненно некоторое количество технарей имелось в команде, но смею возразить, что тон задавался именно художниками. Ибо тока художник может забить на реализацию половины команд в SCSI CAM бус менеджере. Технарь так не сделает — а художнику пофиг что внутри — абы работало в конкретной ситуации и светодиодом на диске моргало.

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

Вы по прежнему говорите о FreeBSD или уже о BSD?

Информация на самом деле одна — идти на канал и интересоваться вопросами ядра у Мастера. :–) А нас убеждать тут малоэффективно — сим искусством занимаемся от самого рождения этого сайта и еще раньше. И еще никто никого не убедил по большому счету. ;–)

Складывается ощущение, что вы ищете «благодать» во вне себя — т.е. кто–то сделает вам спеку а вы будете по ней сверяться. Советую вам поискать эту «благодать» внутри себя — возможно именно ваш мозг со стратегическими замашками сможет собрать воедино эту таблицу Менделеева. :–Р Хватит разговоров — действуйте.

Кстати

    Кстати на канале #haiku на freenode постоянно живет некто geist — по слухам это и есть разработчик вядра NewOS.

Так и есть — Travis Geiselbrecht (http://tkgeisel.com/ geist@newos.org)

А вот тут

А вот тут оказалась подборка фоток трудовых будней и корпоративного отдыха незабвенной Be Inc.

Та-а–к

Та-а–к с вядром Haiku — вернее с его типом чуток разобрался! :)
Кому интересно — то исправлено на ресурсе:
http://ru.wikipedia.org/wiki/Haiku_OS
По идеологии ядро меня устраивает! :)

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Allowed HTML tags: <a> <em> <i> <img> <strong> <b> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании

CAPTCHA
Введите перечисленные символы, чтобы мы убедились, что вы не робот. Не требуется для зарегистрированных пользователей.
t
U
X
z
T
B
Enter the code without spaces and pay attention to upper/lower case.