LINUX.ORG.RU

Говорил и буду говорить. Все драйвера должны быть в юзерспейсе за исключением ну прям совсем базовых. Ядро должно быть настолько тонким, чтобы помещаться на дискету и всё остальное, включая дрова на фс должно быть раздельным проектом и не сливаться с ведром.

PPP328 ★★★★★
()

Ну да, а дисковая подсистема как тормозила - так и тормозит :)

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

Так, а что с производительностью будет? Современные процессоры хорошо поддерживают микроядерность? То есть, хочется микро ядро в Linux?

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от thesis

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

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

А я чот не уверен, что именно об этом.

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

Говорил и буду говорить.

Много вас таких — говорильщиков. Начиная с Таненбаума и заканчивая каждым вторым гениальным теоретиком с ЛОРа, который лучше всех знает, как надо.

Жаль только, ваши прекрасные идеи чересчур идеальны в нашем неидеальном мире. Прямо как GNU Hurd, который на самом деле давным-давно готов, просто мир наш говно, и не готов к нему, и никогда готов не будет.

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

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

Сейчас amdgpu может легко и непринужденно повесить ядро. Такое происходило на windows98, если я не ошибаюсь. Но уже на XP драйвера не могли систему(ядро) намертво вешать. Я вижу причину в том, что на 98 драйвера в ринг0 работали, а в ХР - переехали в ринг3

bryak ★★★★
()
Последнее исправление: bryak (всего исправлений: 2)

Через год нейронка будет писать такое за день работы, только без ошибок.

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

Зачем ты мне это сообщаешь? Разве из моего сообщения не понятно, что я в курсе? Этим всем аргументам не первый десяток лет. Ну проговорим мы сейчас их все снова, согласимся, руки пожмём. Дальше-то что? Весь мир так и продожит крутиться на Линуксе, все эти Хурды с Миниксами останутся там же, где и есть, а винда в своей малюсенькой и всё сильнее скукоживающейся нише. Хоть мы десять раз твёрдо признаем и громко проговорим все эти аргументы за идеальные микроядра.

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

А вот и не будет.

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

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

unDEFER ★★★★★
()

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

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

Весь мир так и продожит крутиться на Линуксе, все эти Хурды с Миниксами останутся там же, где и есть, а винда в своей малюсенькой и всё сильнее скукоживающейся нише.

Я бы не стал так зарекаться, ибо есть sel4, fuchsia и другие перспективные проекты в мире операционок, и есть вероятность того, что что-то кардинально новенькое таки выстрелит, хотя не обязательно сразу на десктопах.

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

Потом поди собери их все в кучу. Будет как в лучшие годы виндавс: поставил ОС и бегаешь по всему Интернету, ищешь драйвера где скачать.

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

Вылезай из танка. Искать дрова на Венде в Интернете в 2026 не только не нужно, но вредно. Даже китайские девайы из центра обновлений скачиваются, с китайскими именами в контрол панеле.

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

Потом поди собери их все в кучу. Будет как в лучшие годы виндавс: поставил ОС и бегаешь по всему Интернету, ищешь драйвера где скачать.

Такие проблемы решаются мета пакетами. Разработчики дистров будут созздавать мета пакеты для распространённых платформ с нужными зависимостями, а они уже будут тянуть всё по всему интернету.

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

и есть вероятность того, что что-то кардинально новенькое таки выстрелит

Вероятность есть, но не от теоретиков с их якобы идеальными ядрами.

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

Интересно, кстати, USBшные флоповоды в системе работают как mass storage, или им всё же свой драйвер нужен. UEFI сможет запустить ядро с такого?

apt_install_lrzsz ★★★★
()

Оставайся на месте. Продолжай наблюдение.

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

за исключением ну прям совсем базовых

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

Ядро должно быть настолько тонким

Ядро и есть тонкое. make localmodconfig.

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

windows10 ★★★★★
()

твои нули никто считать не будет.

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

Миниксами останутся там же, где и есть

Самая популярная ОС в мире - minix. Потому что он крутится внутри каждого Intel ME на ring -3.

Так что Танненбаум был прав.

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

Я наслышан, что она стала почти такой же удобной, в этом плане, как ГНУ/Линукс, потому и написал «как в лучшие годы».

Но проблема в том, что под линукс не будет никакого центра обновлений, в который производители будут нести дрова.

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

Такие проблемы решаются мета пакетами. Разработчики дистров будут созздавать мета пакеты для распространённых платформ с нужными зависимостями, а они уже будут тянуть всё по всему интернету.

Тут два варианта: или это будут а-ля BSD-порты, или это будут качаться бинарные блобы. В обеих случаях много минусов. В том числе и те, что производитель может перестать делать дрова открытыми, удалить с сайта, может забанить воюющую страну (Израиль или США) на своем сайте в знак солидарности. Сейчас же, если железо Линуксом поддерживается, то это работает гарантированно из коробки.

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

Вылезай из танка. Искать дрова на Венде в Интернете в 2026 не только не нужно, но вредно. Даже китайские девайы из центра обновлений скачиваются, с китайскими именами в контрол панеле.

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

Байки «винда просто работает» утомили. Надо что-то новенькое придумывать уже.

skiminok1986 ★★★★★
()

Я хоть и не специалист, но катимся куда-то не туда. Это же не остановится, оно так и будет распухать. 100 миллионов, 500, миллиард..

MoldAndLimeHoney ★★★
()

Количество строк кода в Linux скоро перевалит за 100500 40000000

Ну это с драйверами. А без драйверов сколько? Сколько вообще строк кода непосредственно то, что является ядром?

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

Архитектурно?

Не знаю как, просто констатирую факт. До этого приходилось откатываться на ядро 6.6, поскольку со свежими ядрами Deepseek в браузере временами ронял amdgpu у меня на AMD Radeon RX 6400 настолько, что приходилось жать Reset. С ядром 6.6 же происходил soft reset видеокарты и всё после мигания экрана продолжало работать дальше. С ядром 7.0 вернулось такое же поведение.

ЗЫ. Если что, ошибка была вида

amdgpu: GCVM_L2_PROTECTION_FAULT_STATUS:0x00601431
amdgpu:          Faulty UTCL2 client ID: SQC (data) (0xa)
amdgpu:          MORE_FAULTS: 0x1
amdgpu:          WALKER_ERROR: 0x0
amdgpu:          PERMISSION_FAULTS: 0x3
amdgpu:          MAPPING_ERROR: 0x0
amdgpu:          RW: 0x0

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

Самая популярная ОС в мире - minix. Потому что он крутится внутри каждого Intel ME на ring -3.

Самая массовая не то же самое, что самая популярная. Много вы видите сайтов с рекламой ПО для MINIX3? Часто ли вы встречаете вакансии программистов для MINIX3?

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

Сейчас нужно закрепиться, потому что ожидается ШОК. В 2026-м году драйверы на сетевые карты прошиты в БИОС, и венда их отттуда инсталлирует. Не волнуйтесь, Линуксу со своим «стейбл АПИ ис нонсенс» такое не грозит никогда.

lenin386 ★★★★★
()
Последнее исправление: lenin386 (всего исправлений: 2)
Ответ на: комментарий от unclestephen

Да, предпочтительно их оттуда не ставить, потому что вместе с этим загружается куча дерьма «от производителя», которое потом запаришься вычищать. Но если у мужчин лапки, если у технического специалиста нет в рюкзаке Wi-Fi свистка, который работает везде, тогда штош делать. Всё для них сделали, всё им мало. А что надо? Сами не знают.

lenin386 ★★★★★
()
Последнее исправление: lenin386 (всего исправлений: 2)
Ответ на: комментарий от I-Love-Microsoft

QNX в своё время летала на железе на порядки более слабом, чем сейчас. Так что производительность не проблема.

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

все эти Хурды с Миниксами останутся там же

Надо сравнивать не с учебными или недоделанными ОС, а с полноценными, такие как QNX или Fuchsia. QNX прекрасно показал, что микроядерные ОС могут прекрасно работать в том числе и на слабом железе, проблема там только в лицензии.

У GNU Hurd проблема не в микроядерности, а в том, что руки разработчиков растут из жопы. Было уже сделано множество рабочих микроядерных ОС, например Managarm.

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

Ну это с драйверами. А без драйверов сколько? Сколько вообще строк кода непосредственно то, что является ядром?

Держи.

linux-7.1-rc1 $ tokei:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Language              Files        Lines         Code     Comments       Blanks
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 AWK                      13         2805         1923          500          382
 Alex                      3          494          406            0           88
 ASN.1                    15          656          441           87          128
 Assembly                 11         5781         5445            0          336
 GNU Style Assembly     1355       375597       273238        57669        44690
 Autoconf                  6          459          395           30           34
 Automake                  3           31           23            3            5
 BASH                     62         2960         2033          433          494
 Bazel                    82         1473         1201           54          218
 Bitbake                   3           13            4            6            3
 C                     36671     26072913     19427680      2884149      3761084
 C Header              26653     10616699      8243548      1589081       784070
 C++                       7         2291         1969           81          241
 C++ Header                2          125           59           55           11
 CSS                       3          354          205           87           62
 Device Tree            6251      2056279      1690535        90690       275054
 Forge Config             15         1352          321          744          287
 Gherkin (Cucumber)        1          325          190           97           38
 Happy                    10         6003         5281            0          722
 HEX                       2          173          173            0            0
 INI                       2           13            6            5            2
 Jinja2                  149         1187          966          145           76
 JSON                   1029       592919       592916            0            3
 Lex                      10         2939         2217          356          366
 LD Script                13          552          427           40           85
 Makefile               3193        86231        59819        13460        12952
 Module-Definition         2          157          137            0           20
 Objective-C               1           89           72            0           17
 Pacman's makepkg          1          131           89           13           29
 Perl                     60        43016        33693         4008         5315
 PO File                   7         6711         3346         2259         1106
 Python                  389       121176        94962         7705        18509
 RPM Specfile              1          215          174           14           27
 ReStructuredText       3954       814947       618374            0       196573
 Ruby                      1           29           25            0            4
 Shell                  1150       214105       149338        26688        38079
 Snakemake                 5          143          115           13           15
 SVG                      87        57503        56094         1311           98
 SWIG                      1          252          154           27           71
 TeX                       1          234          155           73            6
 Plain Text              978       110182            0        90322        19860
 TOML                      1           24           21            0            3
 Unreal Script             5          672          416          158           98
 Apache Velocity           1           15           15            0            0
 Vim Script                1           42           33            6            3
 XSL                      10          200          122           52           26
 XML                      31        24227        21649         1416         1162
 YAML                   5551       633464       516844        23397        93223
─────────────────────────────────────────────────────────────────────────────────
 HTML                      2           29           25            0            4
 |- JavaScript             1            7            7            0            0
 (Total)                               36           32            0            4
─────────────────────────────────────────────────────────────────────────────────
 Markdown                  6          500            0          359          141
 |- BASH                   1            2            2            0            0
 |- C                      1           20           12            6            2
 |- Rust                   1           98           76           13            9
 (Total)                              620           90          378          152
─────────────────────────────────────────────────────────────────────────────────
 Rust                    349       113301        93279         8088        11934
 |- Markdown             304        29627          669        22624         6334
 (Total)                           142928        93948        30712        18268
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Total                 88159     42001742     31901319      4826324      5274099
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
dataman ★★★★★
()
Ответ на: комментарий от dataman

Не влезло.

linux-7.1-rc1 $ tokei --exclude drivers:

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Language              Files        Lines         Code     Comments       Blanks
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 AWK                      13         2805         1923          500          382
 Alex                      3          494          406            0           88
 ASN.1                    15          656          441           87          128
 GNU Style Assembly     1346       373283       271582        57408        44293
 Autoconf                  6          459          395           30           34
 Automake                  3           31           23            3            5
 BASH                     62         2960         2033          433          494
 Bazel                    82         1473         1201           54          218
 Bitbake                   3           13            4            6            3
 C                     14458      8134141      5931042      1053363      1149736
 C Header              15127      2841830      1879158       625837       336835
 C++                       7         2291         1969           81          241
 C++ Header                2          125           59           55           11
 CSS                       3          354          205           87           62
 Device Tree            6239      2055583      1689993        90636       274954
 Forge Config             15         1352          321          744          287
 Gherkin (Cucumber)        1          325          190           97           38
 Happy                     8         3841         3359            0          482
 HEX                       2          173          173            0            0
 INI                       2           13            6            5            2
 Jinja2                  149         1187          966          145           76
 JSON                   1029       592919       592916            0            3
 Lex                       8         2165         1657          198          310
 LD Script                12          489          378           39           72
 Makefile               1445        51309        35765         7060         8484
 Module-Definition         2          157          137            0           20
 Objective-C               1           89           72            0           17
 Pacman's makepkg          1          131           89           13           29
 Perl                     57        41514        32557         3868         5089
 PO File                   7         6711         3346         2259         1106
 Python                  335       107466        84682         6943        15841
 RPM Specfile              1          215          174           14           27
 ReStructuredText       3918       804589       610718            0       193871
 Ruby                      1           29           25            0            4
 Shell                   976       178235       124983        22948        30304
 Snakemake                 3           77           51           13           13
 SVG                      87        57503        56094         1311           98
 SWIG                      1          252          154           27           71
 TeX                       1          234          155           73            6
 Plain Text              897       104868            0        85393        19475
 TOML                      1           24           21            0            3
 Unreal Script             5          672          416          158           98
 Apache Velocity           1           15           15            0            0
 Vim Script                1           42           33            6            3
 XSL                      10          200          122           52           26
 YAML                   5543       632130       515786        23295        93049
─────────────────────────────────────────────────────────────────────────────────
 HTML                      2           29           25            0            4
 |- JavaScript             1            7            7            0            0
 (Total)                               36           32            0            4
─────────────────────────────────────────────────────────────────────────────────
 Markdown                  6          500            0          359          141
 |- BASH                   1            2            2            0            0
 |- C                      1           20           12            6            2
 |- Rust                   1           98           76           13            9
 (Total)                              620           90          378          152
─────────────────────────────────────────────────────────────────────────────────
 Rust                    278        92058        76311         6623         9124
 |- Markdown             240        27318          620        20722         5976
 (Total)                           119376        76931        27345        15100
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 Total                 52175     16125456     11922848      2010964      2191644
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
dataman ★★★★★
()
Ответ на: комментарий от X512

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

У разработчиков линукса тоже руки растут из жопы, и хоть бы что.

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

Про разработчиков Линукса такое сказать нельзя потому что Линукс таки успешно работает в отличии от. Степень рукожопости несоизмеримо разная.

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

Линукс таки успешно работает

Спустя тридцать лет свирепого всемирного пердолева. Кабы с хурдом столько нянчились, он бы тоже работал.

thesis ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)