1.1, Аноним (1), 10:27, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –8 +/– |
Теперь выражение "линукс это просто ядро" можно забыть. А говорящим - давать ссылку на эту новость. Линукс это не только ядро, но ещё и стандартная си библиотека!
| |
|
2.2, Аноним (2), 10:39, 23/01/2023 [^] [^^] [^^^] [ответить]
| +10 +/– |
Бред написал? Тебе никто не запрещает взять ядро, как есть, а все остальные библиотеки написать на языке Модула-2.
| |
|
3.7, Аноним (7), 11:26, 23/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
> а все остальные библиотеки написать на языке Модула-2
А на bash можно?
| |
|
4.8, Аноним (2), 11:39, 23/01/2023 [^] [^^] [^^^] [ответить]
| +9 +/– |
Если ты перепишешь баш на модулу-2 то у тебя есть моё лично разрешение.
| |
4.36, Аноним (36), 14:12, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
А, собственно, интерпретатор языка Bash тогда на чём? Bash на bash? :)
| |
|
5.91, Аноним (91), 21:09, 23/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
А вы когда компилятор Си запускаете, у вас тоже вместо бинарника в /bin/gcc код Си текстом лежит?
| |
|
4.61, Аноним (-), 18:21, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> А на bash можно?
Покажи как ты из него системные вызовы дергать намерен.
| |
|
|
6.108, Аноним (108), 23:48, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Ну библиотечные вызовы без проблем: https://github.com/taviso/ctypes.sh
Ух ты, эти мсье знают толк в извращениях! Вот так при помощи клея и такой-то матери можно сделать из буханки хлеба^W^W баша прямо питон какойто.
> А далее в С-библиотеке (в той же glibc есть) определена универсальная обертка
> syscall(), которую можно дернуть.
Это круто, конечно, но если мы юзали сабж то наверное glibc был последним что мы хотели бы использовать. Иначе зачем мы все вон то затевали?!
| |
|
|
|
3.44, Аноним (-), 15:24, 23/01/2023 [^] [^^] [^^^] [ответить]
| –4 +/– |
Модула-2 - мёртвый язык используемый только на госпредприятии России. Создатель языка Модула-2 Никлаус Вирт ещё 1980-х гг. заменил её на новую версию - Оберон. Сейчас вроде Оберон-7 актуален.
Мда-а канифоль, ковёр на стене, стенка, люстра, норковая шапка, ламповый чёрно-белый телевизор, дача, стометровые очереди за хлебом... Ужас!
| |
|
|
5.81, Аноним (-), 19:56, 23/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> цикорий вместо кофе в железной банке
+
Когда делали хлеб в муку добавляли опилки и бумагу.
| |
|
|
7.131, Омномним (?), 10:09, 24/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну вот не надо мне тут.
Белковая эмульсия же.
Кости, кожа, гнилое и тухлое мясо, крыски, проспавшие подъём, и прочие радости жизни.
Температура и давление решают.
| |
|
|
|
4.65, Аноним (36), 18:38, 23/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Раз в состав GCC добавляют, значит, живее Оберона. И уж точно не именно для госпредприятий России.
| |
4.67, U202204161753 (?), 18:50, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Если "коротенько, минут на 40", то в Modula-2, Oberon -ах более-менее полных и в Oberon-07 масса тонких отличий.
Поэтому, ничего из списка не способно заменить другое физически.
| |
|
5.77, Аноним (-), 19:43, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Садись два. Виртовкий Паскаль ---> Модула ---> Модула-2 ---> Оберон. У С++ со времени его появления отличий будет поболее.
| |
|
6.82, U202204161753 (?), 20:21, 23/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Версию от Н.Вирта я знаю. Тем не менее, это теория.
Я же изложил практику.
P.S. "Поболее или поменее" отличий вообще неважно: достаточно одного
| |
|
|
4.99, Аноним (99), 21:58, 23/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> дача, стометровые очереди за хлебом... Ужас!
Это ты очередь за шкафами или вообще любой мебелью забыл. На дни, если не месяцы, с перекличками в означенное время и вычеркиванием лузеров которые выбыли/забили. А уж как шкафы завезли, там прямо зерг раш начинался.
| |
|
|
2.13, Аноним (46), 11:51, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Линукс все еще просто ядро, к-е не слинковано ни с какой динамической библиотекой. Потому что чтоб слинковать ядро динамически, UEFI должен уметь в линуксовый ldconfig. А то что там в архиве идёт какая-то nolibc - дак пофиг.
| |
|
3.16, ryoken (ok), 12:17, 23/01/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
Поясните, с целью повышения уровня образованности... А с какого боку тут вообще UEFI?
| |
|
4.23, YetAnotherOnanym (ok), 12:38, 23/01/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
Мсье, по-видимому, намекает, что перед тем, как передать управление ядру, загрузчик должен будет не просто загрузить в память само ядро, но также найти и загрузить в память все необходимые .so'шки.
| |
|
|
6.62, Аноним (-), 18:24, 23/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Слышьте, системные гениусы, ядро не зависит от внешних .so'шек. Как максимум может расширять себя модулями - но UEFI понятия не имеет как их грузить и это уже ядро само грузит. Когда запустится. По этой причине initrd бывает, на случай если для нормальной работы / надо драйвер, например, блочного устройства сначала вгрузить. Единственное что при этом надо знать EFI или любому иному бутлоадеру - как ядру initrd отдать.
| |
|
7.66, Аноним (46), 18:42, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Мы знаем, что не зависит и не может зависеть. Потому что в противном случае эти либо кто-то должен сначала выгрузить.
| |
7.96, Аноним (-), 21:43, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
>ядро не зависит от внешних .so'шек
Одно точно зависит, только не от сошек, а от Mach.
| |
|
|
|
4.43, Аноним (46), 15:03, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
А кто линковать тогда будет ядро с библами? Никогда не думал почему ядро имеет свои собственные strlen, kprintf, memset, etc вместо юзания их из libc? Потому что кто-то должен загрузить эти библы в память перед стартом ядро. Поэтому ядро один большой блоб без внешних библ, потому что некому линковать эти библы.
| |
|
|
6.93, Аноним (91), 21:14, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
А зачем? Так код ядра сам себе самодостаточный. Скачал, скомпилировал, закинул на флешку - работает.
| |
6.123, Аноним (-), 04:16, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Может стоило иметь один kdlopen() а остальное самому загружать?
Вы только что изобрели initrd, с той разницей что линуховое ядро все же не настолько своей жизнью живет и поэтому модули ему находит и читает все же modprobe/insmod какой, а кернел только парсит регион памяти отдаваемый ядру через init_module(), так что более продвинутые вещи все же прерогатива insmod какого, чтоли.
| |
|
|
|
|
|
3.126, Neon (??), 05:50, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Т.е. гвоздями прибито к С-ной либе.))) Классная архитектура. Хорошо хоть не к Basic'у как Спеки)))
| |
|
4.132, Омномним (?), 10:11, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ты не поверишь - любой статически собранный бинарник гвоздями прибит к C-ной либе.
| |
|
5.162, Аноним (162), 23:16, 27/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Ты не поверишь - любой статически собранный бинарник гвоздями прибит к C-ной либе.
Ну расскажи это mirai, которому как раз наплевать какая там системная либа, лишьбы линуксом было. Сорц этого нечто можно на гитхабе посмотреть. Единственное что ему интересно - это должен быть линукс. А что общего с сабжем? Оно тоже подобие libc через сисколы делает внезапно.
| |
|
6.166, Омномним (?), 00:17, 28/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Какое-то очередное ненужно?
Первый раз слышу это название, видимо область применения очень и очень узкая.
| |
|
|
|
|
|
3.53, Аноним (53), 17:20, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Если бы. К сожалению ретрограды норовят затащить ещё протухшие портянки и прочий шлак.
| |
|
4.98, Аноним (-), 21:45, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
>ещё протухшие портянки
sd-позитивный фетишист объясняет для других на своём языке?
| |
4.142, Аноним (142), 11:46, 24/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну ничего, такими темпами скоро в systemd вкорячат ядро и заживете, хипстеры.
| |
|
|
|
1.3, Омномним (?), 10:45, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +13 +/– |
Ну, да, запихать всё необходимое для минимальной init-подсистемы прямо в ядро, возможно вместе с таковой в будущем - разумная идея. Для эмбедовки очень пригодится.
| |
|
2.14, КО (?), 12:02, 23/01/2023 [^] [^^] [^^^] [ответить]
| –5 +/– |
Такая же разумная как зонды от всех копрорастов и драйвера для Wireguard.
| |
|
3.54, Аноним (53), 17:21, 23/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Если бы ты хоть немного понимал в системном программировании, то понял бы, что единственно возможный вариант.
| |
3.121, Аноним (121), 03:46, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Вообще-то ембедовка - реальная, а не как в современных роутерах, где полноценный mips, который помощнее тех 80486 будет, - это как правило один блоб, в котором вообще всё.
| |
|
4.134, Омномним (?), 10:13, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Блоб как правило структурный, даже у RTOS'ов.
Времена неструктурных "на раз" сляпанных блобов почти ушли.
Встречается только в случае совсем уж fixed-function эмбедовки.
| |
|
|
2.120, Аноним (-), 02:34, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Ну, да, запихать всё необходимое для минимальной init-подсистемы прямо в ядро, возможно
> вместе с таковой в будущем - разумная идея. Для эмбедовки очень пригодится.
Ну да. Например kexec boot так наверное забавно делать. При этом в отличие от абы каких бутлоадеров при этом есть вся мощь линуха.
| |
|
1.9, Аноним (9), 11:39, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Кто-нибудь знает "некостыльное" применение sleep? Не надёжнее ли следить за завершением какого-либо процесса через pid?
| |
|
2.15, Аноним (15), 12:10, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Не надёжнее ли следить за завершением какого-либо процесса через pid?
какой pid скажет тебе когда подключенное USB устройство готово к обмену ?
| |
|
|
4.111, Аноним (-), 00:04, 24/01/2023 [^] [^^] [^^^] [ответить] | +/– | Изначально в линуксе все начинается с ядерного треда, его PID 0 вроде бы номин... большой текст свёрнут, показать | |
|
5.146, YetAnotherOnanym (ok), 13:21, 24/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Изначально в линуксе все начинается с ядерного треда, его PID = 0
> вроде бы номинально.
Вот-вот, я именно его имел в виду. Дождаться завершения PID=0, чтобы определить готовность USB-устройства - эта идея мне нравится.
| |
|
6.163, Аноним (-), 23:18, 27/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Он по моему уже не существует на момент старта инита, так что "condition always true, optimize out". А коли так - считайте что usb девайс всегда доступен, с дельфистов пример берите!
| |
|
|
|
3.112, Аноним (-), 00:05, 24/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> какой pid скажет тебе когда подключенное USB устройство готово к обмену ?
sleep это тоже не подскажет сам по себе :)
| |
|
4.141, Аноним (15), 10:34, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> sleep это тоже не подскажет сам по себе
он используется по прямому назначению - задержка в многозадачной среде исполнения в ожидании готовности устройства
| |
|
5.151, Аноним (-), 20:33, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> он используется по прямому назначению - задержка в многозадачной среде исполнения в
> ожидании готовности устройства
Тут кмк от деталей все сильно зависит, usb устройства разные бывают. Но вообще есть и менее дурацкие способы отлова наличия нужного девайса. Начиная с рулесов udev допустим, когда тот сам желаемую программу позовет по факту "обнаружен девайс VID:PID такой-то". Можно serial или что там еще взять.
Я так себе сделал /dev/board0 допустим для вон той платки. Или /dev/china-crap для кетайского сериального шнурка (crap за глючность его чипа). Ну, как появляется так с ним что-то и делается.
| |
|
6.155, Аноним (15), 09:38, 25/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> дурацкие способы отлова наличия нужного девайса
я не про это говорил. Послал ты уже обнаруженной по USB китайской платке команду стереть флешь память - какой удав тебе скажет что процесс завершён и можно следующую команду слать ? только ждать определённое время - sleep/usleep в зависимости от команды.
| |
|
7.157, Аноним (-), 16:11, 26/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> я не про это говорил. Послал ты уже обнаруженной по USB китайской
> платке команду стереть флешь память - какой удав тебе скажет что
> процесс завершён и можно следующую команду слать ?
В моих протоколах мне это ACK-пакет говорит, репортящий статус операции. А, чо, так можно было. Заодно если что-то пошло не так это еще и репортить нехило бы, потому что отдать кастомеру заглюченый девайс - ведет к куче проблем и затрат у всех в этой цепочке.
> только ждать определённое время - sleep/usleep в зависимости от команды.
Это что-то совсем уж донный уровень инженерии. Даже для китайцев.
| |
|
|
|
|
|
2.94, Аноним (91), 21:29, 23/01/2023 [^] [^^] [^^^] [ответить] | +1 +/– | wait, waitpid, а если нужно из этих функций по тайм-ауту выйти, то они прерывают... большой текст свёрнут, показать | |
|
3.140, Аноним (15), 10:31, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> в качестве функции сна лучше юзать nanosleep вместо usleep (если нужны тайминги меньше секунды), т.к. я заметил, что usleep как-будто в busy-waiting сидит
перепиывал недавно пару открытых проектов, нужна была кросскомпиляция mingw под венду - usleep для венды есть в отличии от nanosleep
| |
|
2.115, Аноним (-), 00:10, 24/01/2023 [^] [^^] [^^^] [ответить] | +/– | Ну смотри, допустим мы хотим подождать нажатия условного any key, но не хотим чт... большой текст свёрнут, показать | |
2.128, www2 (??), 06:05, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Настраиваешь обработку сигналов и засыпаешь. А что ещё делать, если тебе нужно дождаться поступления сигнала? Только спать.
| |
|
1.11, Аноним (-), 11:40, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Круто что они сконцентрировались только на актуальных архитектурах. Иначе бы это сильно раздуло код.
Кто сравнивал размер с минимальным musl?
| |
|
|
|
4.30, Аноним (30), 13:22, 23/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Но обычная магнитная дискетка - это 5.25" на 180 KiB. А 3.5" на 1.44 МБ - это 3.5", двухсторонняя и к тому же ещё и двойной плотности.
| |
|
|
6.40, Аноним (2), 14:33, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Потому что в любом магазине был USB-FDD адаптер бери и пользуйся. И шлейфов было полно которые и на 3.5 и на 5.25 приводы одновременно. Ох молодежь всё бы им чтобы было с USB из коробки.
| |
|
|
6.149, InuYasha (??), 15:03, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ещё были приводы которые могли дискету форматнуть в 30МБ и крутить её на бешенной скорости, приводя к быстрому износу. ls-120, вроде.
| |
|
7.167, Омномним (?), 00:22, 28/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
LS-240, были такие.
Дело там не в скорости было, там запись диска получалась однократной - для любого изменения приходилось переписывать целиком.
| |
|
|
|
|
|
2.26, Аноним (26), 12:51, 23/01/2023 [^] [^^] [^^^] [ответить]
| +4 +/– |
А зачем тебе современное? Бери дискету с QNX, добавь драйвера устройств, нашиши или портани нужные программы и пользуйся.
| |
|
3.28, Аноним (18), 13:05, 23/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
В современном ядре старые баги исправлены, новые добавлены.
QNX - не вариант, проприетарщина.
| |
|
4.170, Аноним (170), 14:00, 24/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
QNX два или три раза в жизни открывали код в эти моменты есть свободны ответвления.
Более того есть российская импортозамещающая компания успешно подсуетившаяся в те моменты
и создавшая форки тогда.
| |
|
|
|
|
4.113, Омномним (?), 00:08, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Не совсем дискеты. IDE FDD, вкривь-вкось, можно пихнуть необычную геометрию.
Ну и да, в El Torito это не обязательно FDD, можно HDD. Причём с LBA.
| |
4.116, Аноним (-), 00:14, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Загрузочные CD/DVD диски эмулируют дискеты.
Да они и HDD эмулируют не хуже.
| |
|
|
2.39, Аноним (36), 14:20, 23/01/2023 [^] [^^] [^^^] [ответить]
| –3 +/– |
Зачем? Современная дискета - это флешка. Ну ещё с натягом - DVD-RW.
| |
|
3.78, Брат Анон (ok), 19:45, 23/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Нука: запрети аппаратно запись на флешку? Слабо магнитом инфу с флешки стереть?
| |
|
4.90, Аноним (-), 21:09, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Нука: запрети аппаратно запись на флешку?
У меня флеха с readonly свичом есть. Прекрасно работает, становится ридонли.
| |
4.154, 5к (?), 09:16, 25/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
с чего угодно стереть можно камнем, главное ударить посильнее
| |
|
5.158, Аноним (-), 16:13, 26/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> с чего угодно стереть можно камнем, главное ударить посильнее
Этот неандерталец совсем ниасилил микроволновки...
| |
|
|
7.165, Аноним (-), 23:28, 27/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Просто бил недостаточно сильно, видать
Тяжелая, небось, поди еще попади по мелкой флешке таким ящиком :)
| |
|
|
|
|
|
|
1.25, Аноним (25), 12:46, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
а зачем эта обёртка? функционала системных вызовов недостаточно? в статье перечислены все те же функции, которые теперь зачем-то не будут системными вызовами, как в юзерспейсе.
| |
|
2.56, Аноним (53), 17:24, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Функционал - это пассивный содомит. А у системных вызовов - функциональность.
| |
|
|
2.47, Аноним (-), 16:21, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ручно больше *libc
Что это значит вообще?
Вариации с гениталиями по-крайней мере осмысленны:
***во больше *libc
*****то больше *libc
А другие конечности не работают.
| |
|
3.101, Аноним (25), 22:22, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
тебе нужно перестать бухать. посмотри на шиroрина в его 23 и увидишь, что будет с тобой через лет 20
| |
|
|
|
2.118, Аноним (162), 00:20, 24/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Библиотеки - для девочек, только syscall(NR_*...), только хардкор!
Тебя что, в сорц mirai сегодня занесло? Так то прикольный у них самоход получился - вот так вообще плевать какая либц и версия, лишь бы это вообще линуксом было. Специальный бонус - оно такое еще и компилится на дюжину архитектур. Или больше.
...правда автору этой штуки оно не помогло, его вроде вычислил кребс. Да и вас вычислят если что-то такое удумаете, лучше и не пытайтесь. Но чисто на технологию позырить - прикольно. Благо на гитхабе вывалено.
| |
|
1.122, Аноним (122), 03:47, 24/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>> Из ещё не реализованных возможностей упоминается отсутствие функций для сетевых операций и многопоточности, а также неполный набор функций string.h и stdlib.h.
Сеть, потоки и utf-8
Здравствуйте, 750kB
| |
|
2.152, Аноним (-), 20:36, 24/01/2023 [^] [^^] [^^^] [ответить]
| –2 +/– |
Можешь в сорце mirai позырить как сделать из сисколов сеть по минимуму. И никаких 750 кило там точно не было.
| |
|
1.153, bOOster (ok), 06:28, 25/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Еще какой-то неосилятор posix решил "переписать", под соусом - "стильно, модно, молодежно". Прогресс во всей красе. Правда прогресс абсолютного бардака...
| |
|