The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Линус Торвальдс выступил с критикой контроля качества в  DRM..., opennews (?), 27-Фев-17, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


7. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Анонимм (??), 27-Фев-17, 11:21 
Кто-то ещё сомневается, что Линуксу давно пора менять дизайн на микроядро?

Это ж оно в сабже просто не скомпилилось у Торвальдса. А если бы скомпилилось? Но никакого тестирования то там всё так же и не было...

Да и сейчас, в монолитном виде тестировать отдельные модули ядра, кроме как собрать ВСЁ, загрузить и погонять - некак. (а хоть какие-то тесты есть только в btrfs модуле)

Остаётся не у дел самый эффективный подход - разработка через тестирование. Причём, в самой критичной части операционки...

Микроядерный же подход позволяет имитировать микроядро для модуля, и делая контрольные вызовы - контроллировать что модуль зовёт дальше: есть ли нужные обращения к железу (через выховы микроядра) и прочим сервисам.

Ну и излишне говорить о безопасности, даже если какая ошибка вкрадётся в какой сервис - это всё-таки, уже отдельный процесс. Даже если навернётся - то будет просто перезапущен. Всё остальное продолжит работу.

У микроядерной модели есть свои проблемы и стереотипы в отношении них.
Но всё решаемо.

Есть вот, к примеру, Debian GNU/Hurd - вполне живая система с 50к пакетами, живёт sshd и накатываются апдейты по сети (из qemu).

PS Минусующим просьба: пишите словами против чего именно Вы против.

Ответить | Правка | Наверх | Cообщить модератору

10. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +3 +/
Сообщение от Аноним (-), 27-Фев-17, 11:22 
Микроядерных полон тред. Вы тут чего забыли?
Ответить | Правка | Наверх | Cообщить модератору

14. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 11:26 
Мы тоже любим Линукс за его функциональность.
Но не хотим, чтобы он канул в лету под грузом принципиально нерешаельных проблем ненадёжной структуры.

А что Вы предлагаете? Как решать эти вот проблемы в сабже и прошлонедельные рутовые уязвимости из-за опечатки (?) в левом модуле?

Ответить | Правка | Наверх | Cообщить модератору

45. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от iPony (?), 27-Фев-17, 12:13 
> Но не хотим, чтобы он канул в лету под грузом принципиально нерешаельных проблем ненадёжной структуры.

Это естественный процесс. Нельзя просто так писать/писать/писать на протяжении этак 30 лет.

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

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

Ответить | Правка | Наверх | Cообщить модератору

53. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 12:22 
Слабая мотивация. Хранить чтобы потом, если чего, выбросить ))
Ответить | Правка | Наверх | Cообщить модератору

69. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 12:48 
> Постепенно любой проект придет к состоянию "надо взять и переписать". Сейчас всякие
> расты встают. Поэтому ждем Rinix этак через пять лет.
> PS: возьмите и запишите это предсказание на бумажку, а если не сбудется,
> то выкиньте.

Ну не Rinix оно называется, а чуть иначе. Но уже есть, и снова же - микроядро.

https://redox-os.org/

Ответить | Правка | К родителю #45 | Наверх | Cообщить модератору

42. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 12:12 
Старые песни на новый лад. А вот был бы у Линуса короткоствол, а вот было бы ядро микроядерным...
Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

62. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 12:35 
> Старые песни на новый лад. а вот было бы ядро микроядерным...

А Вы как решаете насущные проблемы?
Просто что-то меняете, а потом расхлёбываете?
Или вначале подумать и обсудить с другими заинтересованными?

Так что да, вопрос более чем справедлив: да, микроядро может решить обозначенные проблемы надёжности. А какие есть сопутствующие нюансы?
Потерю 1-2% производительности на пресловутых доп. переключениях контекста можно не особо педалировать; это мелочи в сравнении с вопросами именно передачи данных между сервисами.
Существует мнение, что это нужно делать строго асинхронно (что порождает очереди запросов, а в больших NUMA системах с тысячами процов добавляет внушительные затраты на поиск наилучшего места в памяти для каждого сообщения), но даже по структуре монолита видно, что на каждом процессоре запускается свой отдельный поток уже многих внутриядерных подсистем. Почему бы так же не делать в микроядре? - потребности в очередях и не будет: сервисы будут просто вызывать соотв. нитку на своём процессоре, не мешая работать другим.

Ответить | Правка | Наверх | Cообщить модератору

88. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 13:17 
Простите, но вы хотя бы, в теории, знаете во что вываливается переключение контекста? Наверное, из рук не выпускаете книги Эндрю Таненбаум и знаете как внутри все это работает, верно?
Ответить | Правка | Наверх | Cообщить модератору

122. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 14:31 
В точку.
Ещё ответьте за всех, что добавить 5 копеек в запас мощности железа это всегда хуже, чем устраивать даунтайм из-за левых ошибок.
Ответить | Правка | Наверх | Cообщить модератору

190. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 16:39 
Переключения контекста это не разу не пять копеек. Для иллюстрации можете посмотреть на производительность и прожорливость процессора ntfs-3g.
Ответить | Правка | Наверх | Cообщить модератору

211. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:20 
Не уверен, что данная реализация сервисов (fuse) - оптимальна.
Кроме того, это частный случай, а не сами по себе переключения.

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

Ответить | Правка | Наверх | Cообщить модератору

283. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 21:13 
Началось виляние филейной частью, покажите более оптимальную.
Почему-то никто за более чем 30 лет ниасилил.
Ответить | Правка | Наверх | Cообщить модератору

291. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 21:40 
> Началось виляние филейной частью, покажите более оптимальную.

Вот об этом и речь. Но в более общем виде.

Ответить | Правка | Наверх | Cообщить модератору

353. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Очередной аноним (?), 28-Фев-17, 10:13 
>> Почему-то никто за более чем 30 лет ниасилил.

На этот ваш постоянный вопрос всегда есть постоянный ответ - QNX. Отличная операционка. Единственные ее недостатки - только рилтайм, а не универсальность назначения (со свопом) и отсутствие полной открытости и свободы для сообщества, лицензия

Ответить | Правка | К родителю #283 | Наверх | Cообщить модератору

354. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Michael Shigorinemail (ok), 28-Фев-17, 10:18 
> Единственные ее недостатки

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

PS: помню ту дискетку, ага.  Симпатичная была штука.

Ответить | Правка | Наверх | Cообщить модератору

361. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Очередной аноним (?), 28-Фев-17, 11:47 
>> может, попробуем развернуть на нескольких тысячах узлов вычислительного кластера

теоретически архитектура ее как нельзя лучше для этого подходила - ее IPC базируется на отправке сообщений (синхронных и асинхронных), причем даже прозрачно через сеть. При нужде даже какой-нибудь драйвер может работать на другом узле (он ведь тоже всего лишь юзерспейс-программа, обрабатывающая поступающие сообщения)

>> или вот на wifi-маршрутизаторе?

Ну для сетевых нужд модифицированные варианты QNX циска где-то использовала (-зует?). Из википедии:
"Cisco Systems использует оптимизированную версию микроядра QNX Neutrino в программном обеспечении IOS XR[17]. Программный пакет IOS XR предназначен для управления коммутаторами Cisco CRS-1, обеспечивает непрерывный режим работы и поддерживает развитые функции управления терабитными коммутаторами с распределённой архитектурой."

Т.е. при желании наверное можно и правильные wifi-драйвера написать (производителю железа), а маршрутизация, думаю, в стеке TCP/IP QNX-а наверное присутствует

Повторюсь, для меня там недостаток - проприетарность. И второе - это не ОС универсального назначения (еще раз повторюсь - как частное следствие - нет того же свопа)

Если бы его вовремя сделали паблик домейн/GPL - думаю его бы доточили до ОС универсального назначения, а дальше и до полноценной работы на тысячах узлах вычислительных кластеров и для работы в вифи-маршрутизаторах. Но история не терпит сослагательного наклонения

>> PS: помню ту дискетку, ага.  Симпатичная была штука.

да, только я помню небольшую стопку дискеток (какая-то из версий QNX4), там еще графическая система была. Помню, меня порвало, когда я на 80386 (с сопроцессором) получил ОС с настоящей вытесняющей многозадачностью, а не Windows 3.x с кооперативной. Но вот с прикладным софтом, конечно, была другая ситуация, ну на то она и специализированная ОС жесткого реального времени (хотя несколько позже было забавно на QNX6 запускать квейк2)

Ответить | Правка | Наверх | Cообщить модератору

366. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 28-Фев-17, 12:03 
>>> может, попробуем развернуть на нескольких тысячах узлов вычислительного кластера
> теоретически архитектура ее как нельзя лучше для этого подходила - ее IPC
> базируется на отправке сообщений (синхронных и асинхронных), причем даже прозрачно через
> сеть.

Справедливости ради: стереотип обязательной асинхронности доставки IPC сообщений - реально порождает громадный (неприемлемый) оверхед на тысячах процов. А разбивка обычного многопоточного софта на запускаемость впараллель на разных хостах (к отправке IPC по сети) - это отдельная работа.

https://www.kernel.org/doc/ols/2007/ols2007v1-pages-251-262.pdf

Поэтому, оставаясь в плену стереотипа обязательной асинхронности IPC в микроядре - разработчики монолита демонстрируют чудеса на многотысячепроцовых системах.

Ответить | Правка | Наверх | Cообщить модератору

371. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Очередной аноним (?), 28-Фев-17, 12:29 
> Справедливости ради: стереотип обязательной асинхронности доставки IPC сообщений

там же было написано "...ее IPC базируется на отправке сообщений (синхронных и асинхронных)..." ---->  "(СИНХРОННЫХ и асинхронных)..."

в QNX отправка сообщения может быть и синхронной, от разработчика программы зависит

Ответить | Правка | К родителю #366 | Наверх | Cообщить модератору

373. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 28-Фев-17, 12:33 
> там же было написано "...ее IPC базируется на отправке сообщений (синхронных и
> асинхронных)..." ---->  "(СИНХРОННЫХ и асинхронных)..."

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

Ответить | Правка | К родителю #371 | Наверх | Cообщить модератору

372. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Очередной аноним (?), 28-Фев-17, 12:32 
а разработчики монолита демонстрируют чудеса производительности перед микроядерщиками из-за значительно меньшего количества переключений контекста задач. Так что жизнь - сплошные компромиссы
Ответить | Правка | К родителю #366 | Наверх | Cообщить модератору

374. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 28-Фев-17, 12:34 
> а разработчики монолита демонстрируют чудеса производительности перед микроядерщиками
> из-за значительно меньшего количества переключений контекста задач. Так что жизнь -
> сплошные компромиссы

Как будто производительность - всегда важнее всего...

Ответить | Правка | К родителю #372 | Наверх | Cообщить модератору

367. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 28-Фев-17, 12:08 
> Повторюсь, для меня там недостаток - проприетарность. И второе - это не
> ОС универсального назначения (еще раз повторюсь - как частное следствие -
> нет того же свопа)
> Если бы его вовремя сделали паблик домейн/GPL - думаю его бы доточили
> до ОС универсального назначения, а дальше и до полноценной работы на
> тысячах узлах вычислительных кластеров и для работы в вифи-маршрутизаторах. Но история
> не терпит сослагательного наклонения

Да терпит история. Моделировать прошлое и будущее - очень даже нужно и полезно (чтоб не наступать снова).

А по поводу проприетарности - похоже, есть какая странная закономерность: проприетарщики вовсю пользуют микроядро для достижения высокой надёжности (те же американские вояки и огрызочники), а в массэ вбрасывается нежизнеспособность такой модели. Кому-то хочется монопольно качественной работы своих систем?

Ответить | Правка | Наверх | Cообщить модератору

423. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 01-Мрт-17, 16:12 
наверное потому, что никто больше столько человеко-дней в это больше и не вливал
развивали то, что посчитали более удобным и приоритетным
остальное существует ровно потому, что есть задачи нерешаемые данным инструментом с приемлемым качеством
очевиднейшие же вещи, но нет, у нас одни лозунги в голове... сектанты, етить
Ответить | Правка | К родителю #283 | Наверх | Cообщить модератору

133. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 14:52 
> Микроядерных полон тред. Вы тут чего забыли?

Они недавно микроядерность проходили )

Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

136. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Andrey Mitrofanov (?), 27-Фев-17, 14:54 
>> Микроядерных полон тред. Вы тут чего забыли?
> Они недавно микроядерность проходили )

Не, талмуд Таненбаума оставляет неизгладимую травму _надолго_. Не "недавно", то есть. ><:>

Ответить | Правка | Наверх | Cообщить модератору

18. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +3 +/
Сообщение от Аноним (-), 27-Фев-17, 11:30 
Я против странно коррелирующих наплывов фанатов микроядерности и микрософта.
Лови минус.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

20. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –4 +/
Сообщение от Анонимм (??), 27-Фев-17, 11:33 
Спасибо за конкретику по минусу.

Хотя странно: за наплавы статистики посещаемости ресурса лично я не отвечаю, но минус прилетает именно мне... Ну что ж...

Да, если по микроядру есть мысли - прошу.

Ответить | Правка | Наверх | Cообщить модератору

40. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 12:09 
Куратор твой отвечает.
По микроядру задачка тебе такая на размышление: оцени, сколько сил на это уйдет, и насколько велик возможный выигрыш. А то указывать, куда идти линуксу, ты, конечно, горазд.

Ну и да, пассажи вроде
>Да и сейчас, в монолитном виде тестировать отдельные модули ядра, кроме как собрать ВСЁ, загрузить и погонять - некак.

Выдают глубину твоих познаний в предметной области с головой.

Ответить | Правка | Наверх | Cообщить модератору

55. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –3 +/
Сообщение от Анонимм (??), 27-Фев-17, 12:25 
> По микроядру задачка тебе такая на размышление: оцени, сколько сил на это
> уйдет, и насколько велик возможный выигрыш.

Возможный выигрыш: в мире продолжит жить и развиваться самое функциональное открытое ядро общего назначения, а не загнётся под весом своих проблем, вынуждая народ разбегаться по всяким *BSD или - не дай Бог - оффтопикам.
Думаю, этот выигрыш достоин любого объёма человекочасов.


> А то указывать, куда идти линуксу, ты, конечно, горазд.

Спасибо.
Вы тоже можете попробовать предложить путь развития. Это никому не запрещается.


> Ну и да, пассажи вроде
>>Да и сейчас, в монолитном виде тестировать отдельные модули ядра, кроме как собрать ВСЁ, загрузить и погонять - некак.
> Выдают глубину твоих познаний в предметной области с головой.

А я на экзамене? Или речь обо мне?
Я думал, что речь о Линуксе.

Есть конечно отдельные автоматические тесты по некоторым подсистемам (find|grep test), но их объём несопоставим с объёмом всего кода (т.е. покрытие - мизерное).
Потому, тестируют всё ядро целиком сборками случайных конфигов (да, это и значило "собрать ВСЁ, загрузить и погонять"), а отдельные дрова в процесса разрабоки - в лучшем случае перезагрузкой модуля. Невыгружаемые же части ядра тестятся перекомпиляцией и бутов в это ядро.
Вы ещё какие-то споособы тестирования текущего Линуха знаете?

Ответить | Правка | Наверх | Cообщить модератору

67. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 27-Фев-17, 12:40 
>Возможный выигрыш: в мире... (наступит, короче, коммунизм)

Ты давай вот эти прокламации оставь для кого-нибудь другого. Линукс не самоцель. Возьми и посчитай. С обоснованиями.

>Вы тоже можете попробовать предложить путь развития. Это никому не запрещается.

Еще раз говорю, более понятно: звездеть на форуме - не мешки ворочать. Иди и делай. Будешь указывать, куда идти другим - другие однажды скажут, куда идти тебе.

>А я на экзамене? Или речь обо мне?

О тебе, студент, о тебе. Ты берешься рассуждать о тех вещах, о которых имеешь весьма смутное представление.

>Есть конечно отдельные автоматические тесты... (опять много воды)

Тестирование и архитектура ядра - вещи ортогональные. Это вопрос организационный, а не вопрос микроядерности.

Ответить | Правка | Наверх | Cообщить модератору

101. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:44 
> Ты давай вот эти прокламации оставь для кого-нибудь другого. Линукс не самоцель.
> Возьми и посчитай. С обоснованиями.

Зачем?
Это что, коммерческий проект или где?
Или кому-то станет легче, если появится циферь, что для этого нужно N+1 человекочасов?
Это добавит сторонников микроядерного подхода? - не думаю.

> Еще раз говорю, более понятно: звездеть на форуме - не мешки ворочать.
> Иди и делай.

Я и делаю.
Меж прочим, пересматривать устоявшиеся стереотипы (а тем паче помогать в этом другим) - очень сложная и неблагодарная (но необходимая) работа.

> Будешь указывать, куда идти другим - другие однажды скажут, куда идти тебе.

Вы меня с кем-то путаете.
Кому я и где указал?
Какому субъекту я вот прям взял и что-то начал рассказывать что делать?
Не было этого. Даже Торвальдсу я ничего не указывал.
Перечитайте, если не верите.


> О тебе, студент, о тебе. Ты берешься рассуждать о тех вещах, о
> которых имеешь весьма смутное представление.

Заметьте, сколько всего Вы уже написали, но о микроядре пока ни слова (всё какие-то нравоучения что я не так что-то [не]делаю). Я же о нём написал хоть что-то. По одному этому параметру можно судить о наших представлениях.


> Тестирование и архитектура ядра - вещи ортогональные. Это вопрос организационный, а не
> вопрос микроядерности.

Согласен. Другого и не утверждал.
Просто микроядро переводит разработку дров в юзерзлевел, что проще (прослойка API уже готова, раз и для всех, не нужно тратить время для написания заглушек).

Ответить | Правка | Наверх | Cообщить модератору

141. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 15:12 
>Это что, коммерческий проект или где?

Это тут ни при чем. Посчитать прошу не в деньгах, а в часах.

>Или кому-то станет легче, если появится циферь, что для этого нужно N+1 человекочасов?

Тебе должно полегчать, когда осознаешь, что это титанический труд, не стоящий свеч.

>Это добавит сторонников микроядерного подхода? - не думаю.

Правильно, не добавит, см. выше, почему.

>Я и делаю.

Результаты где? Сколько сил потрачено уже и каких успехов достиг проект?

>Меж прочим, пересматривать устоявшиеся стереотипы (а тем паче помогать в этом другим) - очень сложная и неблагодарная (но необходимая) работа.

Угу. Похоже, предыдущий вопрос снимается.

>Заметьте, сколько всего Вы уже написали, но о микроядре пока ни слова

Потому что нет предмета спора. Забавно, но ты не написал про микроядро тоже ничего, ты лишь безосновательно пытаешься утверждать, будто бы архитектура ядра разом решит все организационные вопросы и какие-то сферические "надежности" и "безопасности" в вакууме и *спасет линукс* (конечно же, без ссылок на авторитетные исследования и подсчеты). И вот, например, опять:

>Просто микроядро переводит разработку дров в юзерзлевел, что проще

Это бессодержательное утверждение, понимаешь? С ним невозможно поспорить. Что проще? Кому проще?
И так у тебя все.

Ответить | Правка | Наверх | Cообщить модератору

167. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 16:03 
> Это тут ни при чем. Посчитать прошу не в деньгах, а в часах.

Ничего это не поменяет, и проблем в Линухе не убавит.

>>Или кому-то станет легче, если появится циферь, что для этого нужно N+1 человекочасов?
> Тебе должно полегчать, когда осознаешь, что это титанический труд, не стоящий свеч.

При чём тут я?
Ну титанический, и что? Это ж всё уже раз написали люди. Значит и переделать смогут, когда осознают необходимость.
Временем то не связаны.
Главное - знать правильный путь.

>>Я и делаю.
> Результаты где? Сколько сил потрачено уже и каких успехов достиг проект?

Куча народу на опеннете задумалось (кто в какой степени, конечно) о проблемах Линукса, о путях их решения, и, в частности, о пути микроядра.
Некоторые из этого числа ещё какое-то время будут думать над этим, кто-то ещё что-то придумает, а кто-то изменит своё мнение. И всё это - в плюс к _долгосрочному_ решению проблем Линуха.


>>Заметьте, сколько всего Вы уже написали, но о микроядре пока ни слова
> Потому что нет предмета спора.

Да, есть вопрос, а не спор: как окончательно решить все эти проблемы устойчивости и качества кода Линукса?

> Забавно, но ты не написал про микроядро тоже ничего

Странно, в моей Вселенной я в этой ветке напостил кучу постов о микроядре.


> ты лишь безосновательно пытаешься утверждать, будто бы архитектура ядра
> разом решит все организационные вопросы

Вы снова меня с кем-то путаете... ну бывает.


> и какие-то сферические "надежности" и "безопасности" в вакууме и *спасет линукс*

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


> (конечно же, без ссылок на авторитетные исследования и подсчеты).

а.... Вам авторитетов подавай... своей головой не можете подумать...
Ну, что ж. Таковых счас большинство (увы).


>>Просто микроядро переводит разработку дров в юзерзлевел, что проще
> Это бессодержательное утверждение, понимаешь? С ним невозможно поспорить. Что проще? Кому
> проще?
> И так у тебя все.

Проще, потому, что есть заданный API, через который нужно общаться с железом и прочими сервисами, и - главное - через это API возможна разработка через тестирование (TDD), что позволяет тестить написанное и в юзер-левеле, причём во всех режимах работы самого железа. Это подразумевает запись в форме тестов того, как должна работать железка.
Даже если разработка драйвера идёт путём прощупывания железки, не имея документации производителя. Просто все "раскопки" записываются в форме тестов - и будут проверять на соответсивие уже сам код.

Ответить | Правка | Наверх | Cообщить модератору

193. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 16:48 
>Ничего это не поменяет, и проблем в Линухе не убавит.

Да неужели? А вот твои дифирамбы микроядру, конечно, все поменяют и все проблемы решат!

>Ну титанический, и что? Это ж всё уже раз написали люди. Значит и переделать смогут, когда осознают необходимость.

Теперь докрути свою мысль до конца, не бойся: необходимости в этом нет, вот и никто не переписывает.

>Главное - знать правильный путь.

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

>Результаты где?
>>Куча народу на опеннете задумалось

Молодец какой, очень результативен твой проект микроядерного линукса, ничего не скажешь!

>Да, есть вопрос, а не спор: как окончательно решить все эти проблемы устойчивости и качества кода Линукса?

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

>Странно, в моей Вселенной я в этой ветке напостил кучу постов о микроядре.

Кучу напостил, вот именно. Толку ноль, смысла ноль.

>Вы снова меня с кем-то путаете... ну бывает.

Не путаю, нет.

>Почему сферические?

Без конкретики потому что.

>Разве не добавляет системе надёжности то, что браузер (драйвер веба меж прочим ;) работает в отдельном адр. пространстве, а не в ядре?

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

>а.... Вам авторитетов подавай... своей головой не можете подумать...

Ньютон говорил, что стал великим, потому что стоял на плечах гигантов. Но кукаретик-микроядерщик, несомненно, умнее всех ученых-современников.
Что ж, можно и своей, почему бы и нет? Покажи хотя бы одну свою публикацию на тему, очень интересно будет обсудить.

>Это подразумевает запись в форме тестов того, как должна работать железка.

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

Ответить | Правка | Наверх | Cообщить модератору

210. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:19 
> Очередное бессодержательное утверждение за все хорошее. А кто сказал, что микроядро -
> правильный путь?

А как иначе оградить доступ тому, чему не нужно всё, а достаточно лишь своей памяти?


> Молодец какой, очень результативен твой проект микроядерного линукса, ничего не скажешь!

Вообще-то, любой немалый проект начинается с обсуждения. Нет?
(кто-то ниже об инженерии говорил?)


>>Да, есть вопрос, а не спор: как окончательно решить все эти проблемы устойчивости и качества кода Линукса?
> Никак

Понял. Тогда к Вам вопросов больше нет.

> и дело не в архитектуре и вообще не в линуксе. Был
> бы знаком с предметной областью (программная инженерия) - не задавал бы
> таких глупых вопросов.

Мой вопрос отличается ещё и предложенным вариантом ответа на него.

>>Разве не добавляет системе надёжности то, что браузер (драйвер веба меж прочим ;) работает в отдельном адр. пространстве, а не в ядре?
> Браузер и сейчас не работает в пространстве ядра. Ты совсем плаваешь, дружок!

Что-то Вы в своей истерике не понимаете написанного. Перечитайте ещё раз. Я не утверждал, что он в ядре работает.


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

Неплохая точка старта:
microkernel _точка_ info


> Молодец какой! А ничего, что эта сферическая в вакууме программная модель железки,
> потребует усилий на написание гораздо больше, чем написание драйвера для нее же?

Удивительно, но чтобы что-то сделать - нужно делать.
Сам драйвер не говорит ничего о простом вопросе: а так ли он работает, как задумывалось? Просто потому, что то, как задумывалось - написано разве что в Documentation/* на человеческом языке, и проверять - следовательно - нужно тратить время именно человеку. Но все вокруг продолжают страдать, что нет времени.


> Но это полбеды - главная беда в том, что тестирование
> на такой ущербной модели все равно ничем тебе не поможет.

Если есть тесты и нет тестов - не дают никакой разницы, то вопрос о программной инженерии лучше закрыть.

Извините, если побеспокоил.

Ответить | Правка | Наверх | Cообщить модератору

304. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 22:22 
> find|grep test

Надеюсь, это была не цитата?

Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

310. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 22:32 
>> find|grep test
> Надеюсь, это была не цитата?

Возможно, но ссылку счас уже не найду. Где-то затерялась в закладках...

Ответить | Правка | Наверх | Cообщить модератору

312. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 22:37 
>>> find|grep test
>> Надеюсь, это была не цитата?
> Возможно, но ссылку счас уже не найду. Где-то затерялась в закладках...

А без закладки можете сказать, что именно должна вернуть такая команда?

Ответить | Правка | Наверх | Cообщить модератору

318. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 22:46 
> А без закладки можете сказать, что именно должна вернуть такая команда?

Предполагался запуск в дереве сырцов 4.4 Линуха.
В целях ознакомиться с общим состоянием тестирования кода ядра.

Ответить | Правка | Наверх | Cообщить модератору

325. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 22:56 
>>>>> find|grep test
>> А без закладки можете сказать, что именно должна вернуть такая команда?
> Предполагался запуск в дереве сырцов 4.4 Линуха.

Не цель, а что вернёт.  Вы же ратуете за тесты?  Пока этот сами не прошли.

Ответить | Правка | Наверх | Cообщить модератору

332. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 23:09 
> Не цель, а что вернёт.  Вы же ратуете за тесты?  

Много чего вернёт. (смысл приводить общеизвестную "простыню"?)
Будет видно, что что тесты есть, но избирательные, покрыт далеко не весь код.

Ответить | Правка | Наверх | Cообщить модератору

344. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 28-Фев-17, 03:00 
>> Не цель, а что вернёт.  Вы же ратуете за тесты?
> Много чего вернёт. (смысл приводить общеизвестную "простыню"?)
> Будет видно, что что тесты есть, но избирательные, покрыт далеко не весь
> код.


% find /usr/src -type f -ipath "*test*" | wc -l
   10259
% find /usr/src -type f | wc -l              
   72617

% find /usr/src/ -path "*.git*" -prune -o  -ipath "*test*" -type f -print | wc -l
   10259
% find /usr/src/ -path "*.git*" -prune -o  -type f -print | wc -l
   70317

% find /usr/src/ -path "*.git*" -prune -o  -ipath "*test*" -type f -print0 | gdu -ch --files0-from=-|tail -n1
90M    total

% find /usr/src/ -path "*.git*" -prune -o -type f -print0 | du -ch --files0-from=-|tail -n1
1,2G    total


Оно?


Ответить | Правка | Наверх | Cообщить модератору

363. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 28-Фев-17, 11:49 
Да, примерно.
Я лишь был о ядре Линухе.
Ответить | Правка | Наверх | Cообщить модератору

334. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от ZloySergant (ok), 27-Фев-17, 23:13 
А зачем вызов grep'а?
Ответить | Правка | К родителю #318 | Наверх | Cообщить модератору

22. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –4 +/
Сообщение от Аноним (-), 27-Фев-17, 11:34 
Микроядро лишает Линуса власти и требует от него сохранять неизменным API. Сейчас оный разделился на несколько частей:
- собственно API
- GPL_ONLY функции, которые можно вызвать только будучи слинкованным с ядром
- функции, которые можно вызвать в ядре, не входящие в API

Состав последних двух меняется по желанию левой пятки.

Параметры (перечень, порядок, значения констант) всех упомянутых меняются непредсказуемым образом.

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

Можно отказаться от много, но не от власти.

Если что, тылы у Торвальдса закрыты. Он уже лет 10 сам предлагает перейти на микроядро.

Вот напр. очередные изливания на эту тему образца 2009 г.:

https://www.opennet.ru/opennews/art.shtml?num=23527

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

28. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 11:50 
> Микроядро лишает Линуса власти и требует от него сохранять неизменным API.

Дык почему же? Межсервисное API можно менять хоть по 10 раз на дню. Микроядерность этому никак не мешает.


> Сейчас это вылазит на этапе компиляции и в случае серьёзных изменений приводит
> к невозможности компиляции

Компиляция - это ладно. Но автоматизированных тестов то функциональности нет...


> Можно отказаться от много, но не от власти.

Ну а власть - в конечном счёте её всегда БЕРУТ, а не дают. И пока нет претендента, Торвальдс - своего рода монополист. Невзирая на модель ядра.


> Если что, тылы у Торвальдса закрыты. Он уже лет 10 сам предлагает
> перейти на микроядро.

Если бы предлагал - то мы бы уже давно имели ли бы Микроядерный Линукс (как минимум, отдельную ветку).
А так, почитал я ту новость - он сам лично не произносит слова "микроядро", но да, в обсуждениях есть предложения, что "пора".

Ответить | Правка | Наверх | Cообщить модератору

38. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 12:03 
> он сам лично не произносит слова "микроядро"

Конечно нет! Сказал "а", говори и "б". Нужно намёками вынудить других это делать, чтобы в случае успеха приписать его себе, а в случае неудачи свалить его на них. Обрати внимание вот на этот "тонкий намёк":

https://www.opennet.ru/opennews/art.shtml?num=32838

Он считает ситуацию недопустимой и хвалит сам себя за то, что организовал её именно так.

> своего рода монополист

Уверен? Когда МС было нужно, они пропихнули любой объём кода, который посчитали нужным. Сейчас это нужно ряду компаний и они пропихивают DRM. Торвальдс кроет их матом, но принимает их патчи в приоритетном порядке, не взирая на явные косяки.

Микроядерность сделает драйвера независимыми от ядра. Это приведёт к тому, что появится ещё один слой API (т.н. "Kernel API") - стандартизированную (!) версию функций, перечисленных выше.

Ответить | Правка | Наверх | Cообщить модератору

44. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 12:12 
> Конечно нет! Сказал "а", говори и "б". Нужно намёками вынудить других это
> делать, чтобы в случае успеха приписать его себе, а в случае
> неудачи свалить его на них.

Что ж, такая себе "перестраховка".
Впрочем, в текущем обществе лидеры просто обязаны высказываться неоднозначно. Т.к. интересы элитариев и их корпораций конкретно противостоят интересам трудового большинства.


> Обрати внимание вот на этот "тонкий намёк":
> Он считает ситуацию недопустимой и хвалит сам себя за то, что организовал
> её именно так.

Ну хвалит - и молодец.
Вообще, поклон ему в ноги за то, что он УЖЕ сделал в своей жизни.
Ну а дальше - не только он умеет vim'ить код.


>> своего рода монополист
> Уверен? Когда МС было нужно, они пропихнули любой объём кода, который посчитали
> нужным. Сейчас это нужно ряду компаний и они пропихивают DRM. Торвальдс
> кроет их матом, но принимает их патчи в приоритетном порядке, не
> взирая на явные косяки.

Ну раз только ему делают такие широкие предложения, "от которых невозможно отказаться", значит монополист ;)
Но завершение монополии достигается появлением альтернативы...

> Микроядерность сделает драйвера независимыми от ядра. Это приведёт к тому, что появится
> ещё один слой API (т.н. "Kernel API") - стандартизированную (!) версию
> функций, перечисленных выше.

Да, безусловно.
И это будет славно. Стандартизация - упрощает жизнь многим.

Ответить | Правка | Наверх | Cообщить модератору

23. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 11:42 
> Остаётся не у дел самый эффективный подход - разработка через тестирование.

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

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

37. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 12:02 
> есть доказательства, что этот подход - самый эффективный из существующих?

1. Проверка каждого оператора в коде - это лучше, чем отстуствие проверки.
2. А написание такой проверки ещё перед кодом - значит, что код будет делать именно то, что требуется проверкой, а не что-то другое.


> Сколько не
> видел попыток внедрения данного подхода - ни разу не было отмечено
> позитивных изменений, даже если разработка ведется вообще без написания тестов.

Посмотрите литературу и видео Uncle Bob'а. Там всё подробно рассказано.

Ответить | Правка | Наверх | Cообщить модератору

47. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 12:13 
> написание такой проверки ещё перед кодом

Это называется "перенос сложности". Сложность системы остаётся неизменной, но можно перенести её с одного этапа на другой. В данном случае вы переносите сложность тестирования и отладки с этапа тестирования и отладки на этап написания предварительных тестов.

По личному опыту: это работает лишь в самых простых случаях. Когда в коде идёт выборка данных из БД или работа с оборудованием, то для повторения ситуации нужно повторить всю БД или её значительную часть.

Пример: построение сложного отчёта для нужд руководства компании, объединяющего данные о продажах и закупках в нескольких разрезах.

Отсюда вытекает, что твои тесты возможно лишь в простых функциях где есть чётко обозначенные вход и выход. В 90% случаев они настолько просты и понятны, что написание для них тестов - это потеря времени.

Unit тесты становятся интересными лишь в ситуациях где можно обеспечить "полное покрытие тестами" и нужно вносить много изменений во все модули. Такие ситуации встречаются редко.

Ответить | Правка | Наверх | Cообщить модератору

77. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:03 
>> написание такой проверки ещё перед кодом
> Это называется "перенос сложности". Сложность системы остаётся неизменной, но можно перенести
> её с одного этапа на другой.

Оно и одержимое первых 7 метров /dev/random сложно, как и 7 метров /boot/vmlinuz-4.4.0-64-lowlatency
но в первом случае - такая фигня получается...


> В данном случае вы переносите
> сложность тестирования и отладки с этапа тестирования и отладки на этап
> написания предварительных тестов.

Если нет тестов - то начинается дебаг, роль уровня владения дебаггером разработчика и временные затраты на сам дебаг - значительно возрастают с ростом проекта (посмотрите сколько уже инструментов run-time дебага в линухе)
Что лучше: один раз написать тест и получить постоянную проверку этого места кода, чем постоянно тратить время на дебаг?
Ведь тест то будет запускаться всегда уже автоматом, без доп. затрат времени.

> По личному опыту: это работает лишь в самых простых случаях. Когда в
> коде идёт выборка данных из БД или работа с оборудованием, то
> для повторения ситуации нужно повторить всю БД или её значительную часть.

А большие модули системы никак не должны работать вместе?
И пусть это уже называется не юнит-тестированием, а как-то иначе, но сути не меняет:
Вы ведь хотите, чтоб продукт всегда работал, а не только во время изначального написания кода? А как _убедиться_, что он работает? - А только протестировать.

> Отсюда вытекает, что твои тесты возможно лишь в простых функциях где есть
> чётко обозначенные вход и выход. В 90% случаев они настолько просты
> и понятны, что написание для них тестов - это потеря времени.

И после любого изменения начинается "экономия времени": открыть страничку логина, нажать кнопку, попробовать там ли всё работает...
И это нужно делать при каждом добавлении новой фичи или исправлении бага - иначе нет морального права утверждать, что вся программа работает.
Т.е. тестировать всё равно приходится. Но как быстрее: руками или автоматически, кодом?


> Unit тесты становятся интересными лишь в ситуациях где...

должно работать, а не просто почасовая оплата ^_^

Ответить | Правка | Наверх | Cообщить модератору

84. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +3 +/
Сообщение от Аноним (-), 27-Фев-17, 13:13 
Зачем вы проецируете свой опыт веб-макаки на разработку ядра ?

Вот почему все люди точно знающие как нам обустроить Россию уже работают в Макдональдсе ?

Ответить | Правка | Наверх | Cообщить модератору

110. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 14:00 
Внимательнейше слушаю Ваши предложения по решению проблем устойчивости и безопасности Линуха.
Системно, пожалуйста (т.е. не только в каких-то отдельных местах ядра).
Ответить | Правка | Наверх | Cообщить модератору

111. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 14:02 
> Вот почему все люди точно знающие как нам обустроить Россию уже работают
> в Макдональдсе ?

А у Вас есть предложения как обустроить Россию? Где можно почитать?
Что думаете о подконтрольности ЦБ? о ростовщическом проценте? вреден/полезен/неважно?
И прочие важные вопросы - тоже интересуют (образование, наука, экономика и т.д.)

Ответить | Правка | К родителю #84 | Наверх | Cообщить модератору

284. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 21:14 
Обрататитесь к Шигорину, он знает.
Ответить | Правка | Наверх | Cообщить модератору

307. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 22:25 
> Обрататитесь к Шигорину, он знает.

Да если бы.  Поскольку в целом не знаю -- обустраиваю там, где знаю и умею.

20170223 1151
20170224 1154
20170225 1185
20170226 1186
20170227 1201

Ответить | Правка | Наверх | Cообщить модератору

288. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от _ (??), 27-Фев-17, 21:31 
Нди на ... в ... нет всё таки - на другой сайт :)
Ответить | Правка | К родителю #111 | Наверх | Cообщить модератору

87. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 13:15 
> Что лучше: один раз написать тест и получить постоянную проверку этого места кода, чем постоянно тратить время на дебаг?

Простые функции не нуждаются в unit-тестировании, сложные с помощью unit-тестов полностью не проверишь.

Идея о постоянной отладке одной и той же функции - это вообще откуда? Какой только бред не придумают чтобы втюхать своё фуфло...

> Ведь тест то будет запускаться всегда уже автоматом, без доп. затрат времени

Опять обман. Покрытие unit-тестами приводит к следующему этапу - сервер тестирования, который в цикле гоняет тесты один за другим, рассылая уведомления. Зачем вновь и вновь проверять одну и ту же неизменённую функцию одними и теми же тестами? Вопрос риторический.

> Вы ведь хотите, чтоб продукт всегда работал, а не только во время изначального написания кода?

А что, отлаженный код вдруг, сам по себе, перестаёт работать правильно и начинает сыпать ошибками?

Чаще возникает ситуация, когда что-то не учли. И эти ошибки обычно логические. Напр. функция должна возвращать должность сотрудника, но "забыли" про совместителей, которые работают на 2+ должностях. В результате неверно начислили зар.плату. Как написать unit-тест, чтобы он проверил данную ошибку?

Ответить | Правка | К родителю #77 | Наверх | Cообщить модератору

103. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 27-Фев-17, 13:50 
> А что, отлаженный код вдруг, сам по себе, перестаёт работать правильно и начинает сыпать ошибками?

Бывает и так, при изменениях в окружении в котором этот код выполняется.

Для примера можете почитать о ставшем классикой сбое в софте Ariane 5.

Ответить | Правка | Наверх | Cообщить модератору

113. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 14:06 
Их ошибка, что они использовали копи-пастнутый код, изменяющий глобальные переменные, не проверив его работоспособность и не разбираясь нужен ли он вообще (не нужен).

Аналогичная ситуация произошла недавно в России: при старте первой ракеты с Восточного возникла ошибка, которая остановила запуск. Оказалось, что изменили один из блоков навигации: он был квадратным, стал круглым и с другим количеством контактов. Но те, кто собирал ракету, не сильно парились: они вбили его кувалдой, заизолировав "лишние" проводки.

Ошибку нашли, но решали проблему не менее оригинальным способом: они выломали модуль и спаяли проводки так, чтобы отсутствующий модуль всегда возвращал состояние "всё ОК".

Ответить | Правка | Наверх | Cообщить модератору

131. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 14:51 
Ну вот и как сплошной положизм на нормы характеризует собстенно сами нормы?
Ответить | Правка | Наверх | Cообщить модератору

155. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 15:38 
Ежегодным ростом количества падающих ракет. Как следствие, растёт стоимость страховки, так страховка за запуск спутника с российского Байконура стоит дороже, чем за запуск с американского Канавэрал, хотя сам запуск пока обходится дешевле.
Ответить | Правка | Наверх | Cообщить модератору

178. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 16:18 
Т.е. нормы таки указывают как суммарно дешевле вести дела... но чиновников это мало волнует, а налогоплательщика... похоже, ещё меньше.
Так и живём, вводя друг друга в заблуждение, дескать "всё контролируется"
Ответить | Правка | Наверх | Cообщить модератору

118. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 14:23 
> Простые функции не нуждаются в unit-тестировании

А как тогда узнать как они работают и работают ли вообще?
Каждый раз код перечитывать и моделировать в уме? Заняться нечем?

А вот такие функции (net/dccp/input.c:dccp_rcv_state_process) как?
Они простые или нет, нуждаются в тестировании или нет?

см. git commit 5edabca9d4cff7f1f2b68f0bac55ef99d9798ba4


> сложные с помощью unit-тестов полностью не проверишь.

Для этого есть интеграционные и системные тесты.

Ответить | Правка | К родителю #87 | Наверх | Cообщить модератору

121. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Andrey Mitrofanov (?), 27-Фев-17, 14:28 
>> Простые функции не нуждаются в unit-тестировании
> А как тогда узнать как они работают и работают ли вообще?

Дисциплина https://xkcd.com/1790/ функционального программирования! </решает!></да, на Си>

> Для этого есть интеграционные и системные тесты.

Ответить | Правка | Наверх | Cообщить модератору

142. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 15:14 
А как узнать, что код писанный по функц. программированию делает то, что нужно?
Кроме как проверить.
А как быстрее проверять: руками или авторматически?
Ответить | Правка | Наверх | Cообщить модератору

119. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 14:26 
продолжение следует...
Ответить | Правка | К родителю #87 | Наверх | Cообщить модератору

161. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 15:48 
Я закончил ответ в постах #159 и #160
(извините, специфика форума)
Ответить | Правка | К родителю #87 | Наверх | Cообщить модератору

71. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 12:55 
> А написание такой проверки ещё перед кодом - значит, что код будет делать именно то, что требуется проверкой, а не что-то другое.

Тест гарантирует только то о чем подумал автор теста, и не более того.

Тем более от тестов нет никакого толку для кода взаимодействующего с железом.

Ответить | Правка | К родителю #37 | Наверх | Cообщить модератору

105. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:53 
> Тест гарантирует только то о чем подумал автор теста, и не более
> того.

Другого и не утверждал.
Но без тестов, код куда больше делает и того, чего автор не планировал.
С тестами этого куда поменьше.

> Тем более от тестов нет никакого толку для кода взаимодействующего с железом.

А вот это вот не так.
Микроядро обязано контроллировать доступ к железным портам (а потому, именно само будет звать всякие io/out инструкции, но вылизать этот небольшой и малоизменчивый код - не проблема). А вот дрова устройств, которые будут работать в отдельных процессах, - они будут вынуждены вызывать соотв. функции микроядра для доступа к собтвенно железу. И вот это вот разделение открывает прекрасные возможности для тестирования.
К примеру, если нужно, чтобы при вызове senddata(buffer) драйвер отправлял размер буфера и его самого по определённым железным адресам - то делается просто соотв. assert'ы в конце теста и всё. Код же самого драйвера - одинаков и для теста, и для реальной работы.
Чего и требовалось.

Ответить | Правка | Наверх | Cообщить модератору

124. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 14:33 
> Но без тестов, код куда больше делает и того, чего автор не планировал.

Это утверждение ничем не обосновано.

Ответить | Правка | Наверх | Cообщить модератору

143. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 15:17 
Попробуйте посмотреть в багтрекеры проэктов без модульного тестирования.
И сравнить вероятность незапланированного поведения в случаях:
* когда код пишется сразу
* и когда код пишется лишь после написания теста, его проверяющего (т.е. кода без тестов не может появиться в проекте в принципе).
Ответить | Правка | Наверх | Cообщить модератору

205. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 17:05 
Вероятность одинакова, бо код пишется не роботами и ошибка равновероятно может быть как в коде, так и в тесте.

Но вы можете продолжать верить в серебряные пули.

Ответить | Правка | Наверх | Cообщить модератору

219. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:34 
> Вероятность одинакова, бо код пишется не роботами и ошибка равновероятно может быть
> как в коде, так и в тесте.

Безусловно. Тесты - это тоже код, и его пишут люди.

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

Ответить | Правка | Наверх | Cообщить модератору

129. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 14:43 
>> Тем более от тестов нет никакого толку для кода взаимодействующего с железом.
> А вот это вот не так.
> Микроядро обязано контроллировать доступ к железным портам (а потому, именно само будет
> звать всякие io/out инструкции, но вылизать этот небольшой и малоизменчивый код
> - не проблема).

Дайте я угадаю, вы никогда не занимались низкоуровневым программированием на практике ?

> А вот дрова устройств, которые будут работать в
> отдельных процессах, - они будут вынуждены вызывать соотв. функции микроядра для
> доступа к собтвенно железу. И вот это вот разделение открывает прекрасные
> возможности для тестирования.

ЧТО ВЫ СОБИРАЕТЕСЬ ТЕСТИРОВАТЬ ?!?!?

Вы понимаете что для тестирования драйвера вам фактически нужна стопроцентно корректная программная модель всех поддерживаемых драйвером железок со всеми их особенностями/аппаратными косяками/багами прошивок (иначе грош цена всем вашим тестам) ?

> К примеру, если нужно, чтобы при вызове senddata(buffer) драйвер отправлял размер буфера
> и его самого по определённым железным адресам - то делается просто
> соотв. assert'ы в конце теста и всё.

Какая в конскую жoпy senddata() ? Куда send ? В i/o port, в mmio, в кольцевой буфер железки, в mailbox, КУДА ?

Ты понимаешь что ты пoexaвший ?!?!?!?!?

Ответить | Правка | К родителю #105 | Наверх | Cообщить модератору

152. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 15:32 
> ЧТО ВЫ СОБИРАЕТЕСЬ ТЕСТИРОВАТЬ ?!?!?

Подсистемы ядра (всего того, что нонче есть в Линухе (в гит репе, если совсем быть точным)), в частности, драйвера (и железа, и ФС).


> Вы понимаете что для тестирования драйвера вам фактически нужна стопроцентно корректная
> программная модель всех поддерживаемых драйвером железок со всеми их особенностями/аппаратными
> косяками/багами прошивок (иначе грош цена всем вашим тестам)?

Внезапно.
Будто для написания драйвера этого всего не нужно :)
Но дрова есть и их пишут - значит есть какие-то достаточные представления и о железках,
и вот эти представления, записанные в виде тестов - дадут гарантию, что драйвер делает то, чего захотел программер (и лишь в незначительной степени, чего он пропустил или допустил).

Ответить | Правка | Наверх | Cообщить модератору

192. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 27-Фев-17, 16:48 
> Но дрова есть и их пишут - значит есть какие-то достаточные представления и о железках,

Ну да programming manual и программная модель устройства (фактически его эмулятор) это конечно одно и тоже.

> и вот эти представления, записанные в виде тестов

Oбъем и сложность задачи представляете ? Bижу что нет.

А главное все это, только для того чтобы мамкины теоретики могли спокойно кушать свой борщ.

Ответить | Правка | Наверх | Cообщить модератору

213. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:25 
> Ну да programming manual и программная модель устройства (фактически его эмулятор) это
> конечно одно и тоже.

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

>> и вот эти представления, записанные в виде тестов
> Oбъем и сложность задачи представляете ? Bижу что нет.

Когда нужно таки ответить на вышепоставленный вопрос - то вместо того, чтобы за пару секунд прогнать тесты, начинаетя поиск документации (в лучшем случае что-то есть в Documentation/*), и ручное изучение кода...
Человекочасы? - о чём вы! Время ведь сэкономилено на ненаписании тестов!
Теперь можно спокойно его тратить тоннами на ручной просмотр.


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

Приятного аппетита.

Ответить | Правка | Наверх | Cообщить модератору

153. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 15:33 
> Какая.... senddata()?

какая-нить drivers/net/..../...c:senddata()
да, абстрактная (а как иначе рассказать о множестве случаев, кроме как абстрактно?)

> Куда send ? В i/o port,
> в mmio, в кольцевой буфер железки, в mailbox, КУДА ?

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

> Ты понимаешь что ты ....... ?!?!?!?!?

Поменьше эмоций, пожалуйста.
Ваши частности и детали не меняют общего вопроса.

Ответить | Правка | К родителю #129 | Наверх | Cообщить модератору

191. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 16:43 
> Вы перечислили частности, у каждого драйвера - свои куда. И все эти куда могут быть прописаны в тестах и проверяться автоматически.

Возвращаемся к вопросу о стопроцентно корректной программной модели железа.

Ответить | Правка | Наверх | Cообщить модератору

197. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 27-Фев-17, 16:50 
>> Вы перечислили частности, у каждого драйвера - свои куда. И все эти куда могут быть прописаны в тестах и проверяться автоматически.
> Возвращаемся к вопросу о стопроцентно корректной программной модели железа.

Но зачем? Мы проверили, что драйвер посылает железу корректный с точки зрения спецификации запрос. Если железо в ответ ведёт себя как-то не так, то это уже вопрос из области пересечения этики драйверописателя с костылями и подпорками.


Ответить | Правка | Наверх | Cообщить модератору

204. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 27-Фев-17, 17:04 
Совершенно верно.
(или же кривизны уже самой железки; да, оно иногда ломается)
Ответить | Правка | Наверх | Cообщить модератору

203. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:03 
Никуда не нужно возвращаться. Речи о полноценном моделировании железа нет.
Речь о том, чтобы записать в тесте те требования к драйверу, которые были найдены (если реверсили) или задизайнены (если производитель).
И тогда эти требования будут проверяться за доли секунды кем угодно, невзирая на железо.
Непроизвольно внести изменение, которое сломает что-то где-то в другой стороне модуля - будет невозможно.
Ответить | Правка | К родителю #191 | Наверх | Cообщить модератору

206. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 17:08 
В драйвере версии 1, в регистр X пишется 42.
В драйвере версии 2, в регистр X пишется 43.

Вопрос: как определить не сломалось ли что нибудь в версии 2 ?

Ответить | Правка | Наверх | Cообщить модератору

221. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:37 
(должен отметить конструктив в разговоре! Спасибо)

> В драйвере версии 1, в регистр X пишется 42.
> В драйвере версии 2, в регистр X пишется 43.
> Вопрос: как определить не сломалось ли что нибудь в версии 2 ?

1. Работает ли код относительно железа - запустить на железе и прогнать ВСЕ функции (руками или ещё как)
2. Работает ли код относительно представлений авторов этого кода - запустить на любой системе тесты (автоматом, несравнимо быстрее, чем руками)

Вопрос же соответствия тестов спецификации самой железки - на совести авторов. Это никуда не девается. Тесты - лишь защита авторов от своих собственных ошибок-опечаток.

Ответить | Правка | Наверх | Cообщить модератору

276. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 21:05 
Господи, да поймите же вы что среди проблем в разработке драйверов, ошибки/опечатки отнюдь не номер 1.

Реальные проблемы низкоуровневого программирования:
- кривоватость самого железа/фирмвари, заставляющая городить воркэраунды, иногда весьма нетривиальные;
- несовпадение документации с реальностью, прорехи в документации и прочая errata;
- всяческие проблемы тайминга, состязания (в том числе и с участием железа) и т.п.

Ничему из этого тесты помочь не в состоянии.

Ответить | Правка | Наверх | Cообщить модератору

286. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 21:18 
> Господи, да поймите же вы что среди проблем в разработке драйверов, ошибки/опечатки
> отнюдь не номер 1.
> Реальные проблемы низкоуровневого программирования:
> - кривоватость самого железа/фирмвари, заставляющая городить воркэраунды, иногда весьма
> нетривиальные;
> - несовпадение документации с реальностью, прорехи в документации и прочая errata;
> - всяческие проблемы тайминга, состязания (в том числе и с участием железа)
> и т.п.

Да, железо - тоже коммерческие продукты, и тоже со сроками и катайцами на производстве.
Проблем хватает.
Но всё-же, железка она ж как-то работает. И призвание программера понять его работу (из спецификации+практики) и заставить ядро работать с ним.


> Ничему из этого тесты помочь не в состоянии.

Тесты в состоянии ответить на вопрос: соответствует ли код драйвера представлениям программиста о том, как оно должно работать (по его же мнению). Может он где-то сам ошибся - то его же тесты его же и поправят.

Ответить | Правка | Наверх | Cообщить модератору

308. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 22:29 
>> Ничему из этого тесты помочь не в состоянии.
> Тесты в состоянии ответить на вопрос:

Нет.

Вам столько явно грамотных людей уже написало, что можно было пойти и прочитать про синдром Даннинга-Крюгера самостоятельно :(

Поймите -- все эти благопожелания имеют строго отрицательную ценность, поскольку лишь гробят время людей.  Надо -- кайло в руки и делайте без отмазок вроде "ранний этап исследований": на раннем этапе производится литературный поиск и пролопачивается _уже_ опубликованная гора литературы и кода.  "Не могу" -- значит, надо учиться.  Выясняется, что не настолько и надо -- значит, нечего было пустозвонить про "призвание" и протчая.

Ответить | Правка | К родителю #286 | Наверх | Cообщить модератору

313. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 22:39 
> Вам столько явно грамотных людей уже написало, что можно было пойти и
> прочитать про синдром Даннинга-Крюгера самостоятельно :(

Извините, но они свои грамоты в нет на обозрение не выставляли.
А потому - их слово не весомее чьего-либо.


> Поймите -- все эти благопожелания имеют строго отрицательную ценность, поскольку лишь гробят
> время людей.  Надо -- кайло в руки и делайте без
> отмазок вроде "ранний этап исследований":

Ну вот, снова. Указки ЧТО ДЕЛАТЬ.
Что делать я и сам решу, спасибо.
Я об этом помощи не просил.

Куда интереснее обсуждать без эмоций как ДОЛЖНО БЫТЬ.
Но это не многим психологически по силам...


> на раннем этапе производится литературный поиск
> и пролопачивается _уже_ опубликованная гора литературы и кода.

Извините, но мы не в оторванных от жизни высших кабинетах.
Мне нужно чтоб работало, а не где-то громко звучало.


> -- значит, нечего было пустозвонить про "призвание" и протчая.

Не знаю с кем Вы и где попутали меня. Про призвания я нигде не говорил. Мои призвания - дело сугубо моё.

Вобщем, пост снова обо мне, а не о проблемах ядра...  классика жанра. Все любят "лечить"...

Ответить | Правка | К родителю #308 | Наверх | Cообщить модератору

319. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 22:46 
>> -- значит, нечего было пустозвонить про "призвание" и протчая.
> Не знаю с кем Вы и где попутали меня. Про призвания я нигде не говорил.

"призвание программера" в #286 кто-то другой написал?

> Вобщем, пост снова обо мне, а не о проблемах ядра...  классика жанра.

Видите ли, я как комодератор вынужден дать оценку Вашим сообщениям в плане того, не нарушают ли они правил форума -- см. http://wiki.opennet.ru/ForumHelp -- и пока стрелка всё больше склоняется к риске "бессодержательно".

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

Ответить | Правка | К родителю #313 | Наверх | Cообщить модератору

328. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 23:03 
> "призвание программера" в #286 кто-то другой написал?

Да, моё. Спасибо.
Да, считаю, что программер должен разбираться в том, что пишет.


> Видите ли, я как комодератор вынужден дать оценку Вашим сообщениям в плане
> того, не нарушают ли они правил форума -- см. ....
> и пока стрелка всё больше склоняется к риске "бессодержательно".

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

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


> Представьте себе, .....пойти к верстаку и
> доказать её делом.  Неприятно, правда?

Кому и что нужно доказывать??
Я спрашиваю мнения о путях решения системных проблем Линуха и предлагаю своё решение.
Не, нельзя так?
Надо обязательно потратить сначала кучу времени, сделать 10 неудачных заходов, и лишь потом выйти "в люди", чтоб узнать кто что думает и знает об этой проблеме?
Извините, но я ценю своё время.

Ответить | Правка | К родителю #319 | Наверх | Cообщить модератору

330. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Michael Shigorinemail (ok), 27-Фев-17, 23:08 
>> "призвание программера" в #286 кто-то другой написал?
> Да, считаю, что программер должен разбираться в том, что пишет.

А там было про железку: "Но всё-же, железка она ж как-то работает. И призвание программера понять его работу (из спецификации+практики)".

> Но если на техническом форуме обсуждение плюсов-минусов реализации того или
> иного дизайна ядра ОС это "бессодержательно"...   видимо, обтереть друг друга
> людям куда важнее. Что ж, таковы люди.

Вы же не предложили никакого дизайна -- ни того, ни иного.  И кода не вижу.  А вижу благие пожелания и неумение следить за своей собственной мыслью на протяжении нескольких комментариев, увы.

Поймите, нет цели Вас "замочить".  Но если на дорогу выпускать людей, которые путаются в педалях -- жди беды.

>> Представьте себе, .....пойти к верстаку и доказать её делом.  Неприятно, правда?
> Кому и что нужно доказывать??

Да хотя бы себе для начала.

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

Нельзя флудить попусту.

> Надо обязательно потратить сначала кучу времени, сделать 10 неудачных заходов,
> и лишь потом выйти "в люди", чтоб узнать кто что думает и знает об этой проблеме?
> Извините, но я ценю своё время.

А я ценю время обсуждающих.  И, как ни странно, своё.

На этом и предлагаю завершить эту "гроздь".

Ответить | Правка | К родителю #328 | Наверх | Cообщить модератору

343. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 28-Фев-17, 01:19 
> А там было про железку:....

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

Ответить | Правка | К родителю #330 | Наверх | Cообщить модератору

362. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 28-Фев-17, 11:48 
Да, спасибо за внимание
Ответить | Правка | К родителю #330 | Наверх | Cообщить модератору

166. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +3 +/
Сообщение от Аноним (-), 27-Фев-17, 16:03 
>Какая в *** senddata() ? Куда send ?

Я ожидал от микроядерного пророка ответ "data" :)

Ответить | Правка | К родителю #129 | Наверх | Cообщить модератору

182. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 16:25 
Ну так и обратитесь тогда к пророку.
Ответить | Правка | Наверх | Cообщить модератору

184. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 16:26 
А я да - спасибо, на будущее буду расписывать тесты в более конкретной форме.
Ответить | Правка | К родителю #166 | Наверх | Cообщить модератору

183. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 27-Фев-17, 16:25 
>Тест гарантирует только то о чем подумал автор теста, и не более того.

Тест написанный по спецификации повышает уверенность в том, что система ведёт себя в соответствии с данной спецификацией. Тест написанный разработчиком в рамках test-driven development сам становится спецификацией т.к. отражает видение автора и помогает понять его код.

>Тем более от тестов нет никакого толку для кода взаимодействующего с железом.

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

Вопрос в том - а нужно ли это? Затраты на тестирование должны слихвой покрываться предотвращёнными убытками от найденных багов.

Ответить | Правка | К родителю #71 | Наверх | Cообщить модератору

194. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 16:50 
Вас маркетологи покусали ?
Ответить | Правка | Наверх | Cообщить модератору

195. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Анонимм (??), 27-Фев-17, 16:50 
> Тест написанный по спецификации повышает уверенность в том, что система ведёт себя
> в соответствии с данной спецификацией. Тест написанный разработчиком в рамках test-driven
> development сам становится спецификацией т.к. отражает видение автора и помогает понять
> его код.

Спецификацией так и остаётся текстовое описание дизайнеров железки. Набор же тестов - это видение разработчиков, но никак не дизайнеров.


> Это заблуждение. При должном желании и ресурсах можно эффективно протестировать любую программу
> вне зависимости от того что она делает и как она написана.
> Поместить модули в тестовое ложе для модульного или интеграционного тестирования,

Да, и идеально, если и тестируемый код, и код в реальной работе - один и тот же.

> написать эмулятор железа

В случае, если все участки работы с железными портами уже заранее вынесены в отдельную систему (в микроядро) - эмулятор уже не требуется. Сами тесты могут контроллировать (предоставляя API микроядра) что и как вызывает код.


> Вопрос в том - а нужно ли это? Затраты на тестирование должны
> слихвой покрываться предотвращёнными убытками от найденных багов.

Убытки так или иначе распределены по всей Земле. Их посчитать трудно (хотя можно на примере частной какой-то выборки прикинуть).
В конечном же итоге, вопрос лишь в том: есть ли кто-то, кто озабочен проблемами всех?
Благо, такие есть.

Ответить | Правка | К родителю #183 | Наверх | Cообщить модератору

198. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +2 +/
Сообщение от Аноним (-), 27-Фев-17, 16:53 
> В случае, если все участки работы с железными портами уже заранее вынесены
> в отдельную систему (в микроядро) - эмулятор уже не требуется. Сами
> тесты могут контроллировать (предоставляя API микроядра) что и как вызывает код.

И что толку ? Разработчик (прочитав мануал) считает что нужно писать 42 в регистр X, затем 322223 в регистр Y, тесты проходятся, драйвер не работает.

И как теперь оленя пасти ?

Ответить | Правка | Наверх | Cообщить модератору

215. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:27 
Менять тесты. Ведь они - просто закодированное желание автора.
Он хочет, чтоб не работало - так и запишет.
Если ему не понравится результат - он изменит тесты и посмотрит на новый.
Ответить | Правка | Наверх | Cообщить модератору

223. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 17:45 
> И что толку ? Разработчик (прочитав мануал) считает что нужно писать 42
> в регистр X, затем 322223 в регистр Y, тесты проходятся, драйвер
> не работает.
> И как теперь оленя пасти?

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


Ответить | Правка | К родителю #198 | Наверх | Cообщить модератору

229. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:53 
> а может быть тесты - бесполезная лажа.

А может и защита от своих же опечаток - это тоже лажа.
У каждого свой уровень.

Ответить | Правка | Наверх | Cообщить модератору

208. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 17:11 
> Спецификацией так и остаётся текстовое описание дизайнеров железки. Набор же тестов -
> это видение разработчиков, но никак не дизайнеров.

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

> В случае, если все участки работы с железными портами уже заранее вынесены
> в отдельную систему (в микроядро) - эмулятор уже не требуется. Сами
> тесты могут контроллировать (предоставляя API микроядра) что и как вызывает код.

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

Ответить | Правка | К родителю #195 | Наверх | Cообщить модератору

222. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Анонимм (??), 27-Фев-17, 17:41 
> Если видение разработчиков
> расходится со спецификацией и это не вызвано проблемой в спецификации, то
> разработчики переписывают код.

Однозначно.
Вопрос лишь в выявлении возможных несоответствий (которые возможны, ведь тесты и спецификация на людском языке - всё-таки разные документы).


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

Да. Но раздельные адресные пространства для самих дров линуха - такой эмулятор не даст.
Более простая тестируемость - это же лишь следствие микроядра.

Ответить | Правка | Наверх | Cообщить модератору

196. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Аноним (-), 27-Фев-17, 16:50 
Вас маркетологи покусали ?
Ответить | Правка | К родителю #183 | Наверх | Cообщить модератору

57. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +3 +/
Сообщение от мегааноним_email (?), 27-Фев-17, 12:29 
> Кто-то ещё сомневается, что Линуксу давно пора менять дизайн на микроядро?
> Это ж оно в сабже просто не скомпилилось у Торвальдса. А если
> бы скомпилилось? Но никакого тестирования то там всё так же и
> не было...

И? Если у кого-то не было желания тестировать свой код (в том числе и писать тесты), то почему вдруг при изменении архитектуры что-нибудь поменяется?

> Да и сейчас, в монолитном виде тестировать отдельные модули ядра, кроме как
> собрать ВСЁ, загрузить и погонять - некак. (а хоть какие-то тесты
> есть только в btrfs модуле)
> Остаётся не у дел самый эффективный подход - разработка через тестирование. Причём,
> в самой критичной части операционки...
> Микроядерный же подход позволяет имитировать микроядро для модуля, и делая контрольные
> вызовы - контроллировать что модуль зовёт дальше: есть ли нужные обращения
> к железу (через выховы микроядра) и прочим сервисам.

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

в общем переопределив штук 30 функций можно полностью котролировать драйвер и
писать для него тесты, другой вопрос что

а)Это скучно и не интересно писать тесты, как здесь поможет какая-либо другая архитектура?
б)Набор функций маленький, но количество комбинация их вызовов и соотвественно
объем тестирования огромный, как здесь опять может какая-либо другая архитектура?

> Ну и излишне говорить о безопасности, даже если какая ошибка вкрадётся в
> какой сервис - это всё-таки, уже отдельный процесс. Даже если навернётся
> - то будет просто перезапущен. Всё остальное продолжит работу.

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

72. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 27-Фев-17, 12:57 
> в общем переопределив штук 30 функций можно полностью котролировать драйвер и

писать для него тесты

И что вы собираетесь таким образом тестировать ?

Ответить | Правка | Наверх | Cообщить модератору

94. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:27 
> И? Если у кого-то не было желания тестировать свой код (в том
> числе и писать тесты), то почему вдруг при изменении архитектуры что-нибудь
> поменяется?

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


>> Да и сейчас, в монолитном виде тестировать отдельные модули ядра, кроме как
>> собрать ВСЁ, загрузить и погонять - некак. (а хоть какие-то тесты
>> есть только в btrfs модуле)
>> Остаётся не у дел самый эффективный подход - разработка через тестирование. Причём,
>> в самой критичной части операционки...
>> Микроядерный же подход позволяет имитировать микроядро для модуля, и делая контрольные
>> вызовы - контроллировать что модуль зовёт дальше: есть ли нужные обращения
>> к железу (через выховы микроядра) и прочим сервисам.
> Ну вообще-то и в текущем ядре это сделать не проблема, микроядро здесь
> скорее все усложнит.

Сейчас, чтобы протестировать работу драйвера (не уронив саму систему, где идёт разработка) нужно:
сделать так, чтоб драйвер компилился на уровне пользователя
добавить каких-нить заглушек на оконечную работу модуля с железом
и уже собсно, автоматически тестировать (на основе контроля правильности вызова этих заглушек).
Микроядро же - сразу даёт первых 2 пункта в готовом виде.

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


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

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

> другой вопрос что
> а)Это скучно и не интересно писать тесты, как здесь поможет какая-либо другая
> архитектура?
> б)Набор функций маленький, но количество комбинация их вызовов и соотвественно
> объем тестирования огромный, как здесь опять может какая-либо другая архитектура?

Дрова часто (не всегда) пишут те, кто проэктировал железку, т.е. они и так знают как и на какие команды она должна реагировать. По сути, тесты уже есть (вопрос формата).
А насчёт скучно - так рутовая уязвимость в левой пятке ненужного драйвера на нескольких тысячах серваков с юзерским ssh доступом - завсегда прибавит веселья.
И так раз в год-полгода СТАБИЛЬНО. И просвета в монолитом НЕ ВИДАТЬ.

Ответить | Правка | К родителю #57 | Наверх | Cообщить модератору

236. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от мегааноним_email (?), 27-Фев-17, 18:19 
> Сейчас, чтобы протестировать работу драйвера (не уронив саму систему, где идёт разработка)
> нужно:
> сделать так, чтоб драйвер компилился на уровне пользователя
> добавить каких-нить заглушек на оконечную работу модуля с железом
> и уже собсно, автоматически тестировать (на основе контроля правильности вызова этих заглушек).
> Микроядро же - сразу даёт первых 2 пункта в готовом виде.
> Ну практически полная аналогия если сравнивать написание модуля под монолит и разработка
> обычной юзер-левел проги.

Для ядра в user space есть архитектура "um", и еще конечно qemu,
так что первые 2 пункта и для Linux есть том же относительно готовом виде.

> Дрова часто (не всегда) пишут те, кто проэктировал железку, т.е. они и
> так знают как и на какие команды она должна реагировать. По
> сути, тесты уже есть (вопрос формата).

Блин, почитайте про юнит тесты и multithreading,
а прерывания (которые используют практически любая железка)
дают тот же эфект внезапного переключения контекста,
все еще думаете что это легко написать тест который реально что-то тестирует?


Ответить | Правка | Наверх | Cообщить модератору

239. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 18:30 
> Для ядра в user space есть архитектура "um", и еще конечно qemu,

Проброс железки "внутрь" - задача может и простая, но не решает поставленный вопрос:
тестировать модуль этой железки (который просто будет бежать внутри um/qemu)

> так что первые 2 пункта и для Linux есть том же относительно
> готовом виде.

Попробуйте пробросить что-нить эдакое в qemu или найти тот же драйвер, если конфигурите ядро под ARCH=um. Да, его там просто может не быть (т.к. драйвер может зависеть от конкретного множества аппаратных архитектур). Т.е. решение - не универсально.


> Блин, почитайте про юнит тесты и multithreading,

Готово. И?
"Трудно == не надо делать"?

> а прерывания (которые используют практически любая железка)
> дают тот же эфект внезапного переключения контекста,
> все еще думаете что это легко написать тест который реально что-то тестирует?

Покажите мне где я упоминал слово "легко".

Ответить | Правка | Наверх | Cообщить модератору

346. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от не такойemail (?), 28-Фев-17, 03:14 
>> Для ядра в user space есть архитектура "um", и еще конечно qemu,
> Проброс железки "внутрь" - задача может и простая, но не решает поставленный
> вопрос:
> тестировать модуль этой железки (который просто будет бежать внутри um/qemu)
>> так что первые 2 пункта и для Linux есть том же относительно
>> готовом виде.
> Попробуйте пробросить что-нить эдакое в qemu или найти тот же драйвер, если
> конфигурите ядро под ARCH=um. Да, его там просто может не быть
> (т.к. драйвер может зависеть от конкретного множества аппаратных архитектур). Т.е. решение
> - не универсально.

Что-то вы оба отдаляетесь от контекста обсуждения:

о том насколько легко разработчику драйвера написать тесты в Linux vs мифическая микроядерная ОС.

ИМХО, микроядерная ОС ничем не поможет,
и в том и в другом случае есть довольно небольшой API между драйвером и ОС.
Т.к. хотя ядро Linux это и монолит, но это не значит что как программа оно плохо
спроектировано, модульность и инкапсуляция там везде применяются.

То в каком адресном пространстве будет запускаться тест совершенно не скажется на том, просто будет тест написать или нет.

И с современными технологиями виртуализации и возможности отладки теста будут одинаковы.

А вот сторону эмулирующее микроядро и сервисы и железо vs ядро и железо надо будет писать в обоих случаях. Потому что какой это нафиг юнит тест, если для его запуска нужно запустить всю остальную программу, это уже функциональный тест получается.

Ответить | Правка | Наверх | Cообщить модератору

364. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 28-Фев-17, 11:52 
> ИМХО, микроядерная ОС ничем не поможет,
> и в том и в другом случае есть довольно небольшой API между
> драйвером и ОС.

Да, согласен.

Ответить | Правка | Наверх | Cообщить модератору

65. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Andrey Mitrofanov (?), 27-Фев-17, 12:38 
> Кто-то ещё сомневается, что Линуксу давно пора менять дизайн на микроядро?
> PS Минусующим просьба: пишите словами против чего именно Вы против.

Мы за. Просто ты не понимаешь. Торвальдсу платит ЛФ. Решение -- стань членом ЛФ и _занеси_ им достаточную для _твоих_ хотелок сумму. И всё! Они ж опенет не читают, они отчёты своего отдела продаж читают.

Ву компроне, ситуайен? Ffffморфируй же.

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

98. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:36 
> Мы за.

Ну так это уже ж хорошо.


> Просто ты не понимаешь. Торвальдсу платит ЛФ. Решение -- стань
> членом ЛФ и _занеси_ им достаточную для _твоих_ хотелок сумму. И
> всё! Они ж опенет не читают, они отчёты своего отдела продаж
> читают.

Вы счас расписали процесс реализации идеи, которая НЕ овладела массами. Да, за реализацию таких идей приходится платить.

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

Ответить | Правка | Наверх | Cообщить модератору

112. "Линус Торвальдс... откуда у него такие картинки?"  +1 +/
Сообщение от Andrey Mitrofanov (?), 27-Фев-17, 14:04 
>> Мы за.
> Ну так это уже ж хорошо.

#>>ситуайен? Ffffморфируй же.

А вот и По, пришедший за мной. </надо ставить таги></надо ставить таги></надо ставить таги>

>процесс реализации идеи, которая НЕ овладела массами.

Пациент: — Но вы, доктор, тоже ведь сексуальный маньяк? Признайтесь? Доктор: — С чего вы взяли? Пациент: — А откуда у вас такие картинки?

>я за просвещение масс
>корпорации, которые пытаются хорошо выглядеть перед потребителем

Ответить | Правка | Наверх | Cообщить модератору

130. "Линус Торвальдс... откуда у него такие картинки?"  +/
Сообщение от Анонимм (??), 27-Фев-17, 14:49 
Что-то слишком много тегов...
Ответить | Правка | Наверх | Cообщить модератору

73. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от angra (ok), 27-Фев-17, 12:59 
> Да и сейчас, в монолитном виде тестировать отдельные модули ядра, кроме как
> собрать ВСЁ, загрузить и погонять - некак. (а хоть какие-то тесты
> есть только в btrfs модуле)

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

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

106. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:56 
Согласен, криво выразился.
Писать один модуль, конечно, можно только его пересобирать-перегружать.
Но вот для релиза всего ядра с этим модулем - придётся тестировать и множественной сборкой на случайных конфигах.
Ответить | Правка | Наверх | Cообщить модератору

80. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 13:05 
Давайте вы свои кривые ручонки к линуксу тянуть не будете, а стройными и могучими рядами пойдёте на^W пилить свой хурд. Или что там нынче в коворкингах модно обсуждать.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

107. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –2 +/
Сообщение от Анонимм (??), 27-Фев-17, 13:57 
Как там у классика: не указывайте мне что делать, и я не буду говорить куда....
Ответить | Правка | Наверх | Cообщить модератору

132. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 14:52 
Почему вы тогда считаете для себя возможным указывать что должны делать разработчики ядра ?

"Видно только профессорам разрешается ругаться в ресефесере."

Ответить | Правка | Наверх | Cообщить модератору

154. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –3 +/
Сообщение от Анонимм (??), 27-Фев-17, 15:36 
> Почему вы тогда считаете для себя возможным указывать что должны делать разработчики ядра ?

Вы меня с кем-то путаете. Я ничего такого никому не указывал.
Каждый делает что хочет.

Но я (равно как и Вы, и другие) вправе иметь мнение о работе каждого. А также - высказывать это мнение на публичных форумах.

Ответить | Правка | Наверх | Cообщить модератору

200. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +1 +/
Сообщение от Аноним (-), 27-Фев-17, 16:55 
> Но я (равно как и Вы, и другие) вправе иметь мнение о работе каждого.

А сами в это время наглотались зубного порошку.

Ответить | Правка | Наверх | Cообщить модератору

424. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  –1 +/
Сообщение от Аноним (-), 01-Мрт-17, 16:17 
вправе ровно до тех пор, пока это не нарушает чужих прав
Ответить | Правка | К родителю #154 | Наверх | Cообщить модератору

434. "Линус Торвальдс выступил с критикой контроля качества в  DRM..."  +/
Сообщение от Анонимм (??), 01-Мрт-17, 19:11 
> вправе ровно до тех пор, пока это не нарушает чужих прав

Общеизвестно.
Но Вы то намекаете, что эти чужие права мной уже попраны?
Детали, пожалуйста. Где и в чём попраны?

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру