Как стать автором
Обновить
93.64

*nix *

Хаб про UNIX-подобные операционные системы

Сначала показывать
Порог рейтинга

Почему бы не сделать runtime языка С++ проще и легче? почему бы не сделать его перенос в том числе проще? Когда я задался этим вопросом, я решил, что во чтобы то ни стало, я напишу свой RT, для тех, кто пишет под слабые машины, или тех, кто пишет под bare metal среду. результат вы можете посмотреть на гитхабе: вотъ

Когда я работал, я старался максимально всё упростить, при этом сохранив юзабельность. не знаю как для других, но лично мне было важно сохранить исключения, для меня это удобно. но в С++ они жутко дорогие из-за RTTI (RunTime Type Information), и на bare metal реализуется с большим напрягом. выход прост - использовать статусы вместо типов. но чтобы оставить всем знакомый и удобный синтаксис исключений и позволить функциям возвращать что-то вместо статуса, где это везде лепят, я переделал всё на тупо макросах :>

так же я понял, что сложность моей работы и сложность переносимости этой вещицы усложнится, если прям всё с нуля пилить, поэтому просто воспользовался libc, выпилив libc++. Пришлось сделать обёртки над new и delete, но это не так уж и сложно, просто вызывать malloc/free.

Так же я невероятно сильно намучился в попытках сделать всё используя стандартный синтаксис С++. Потратил несколько часов в попытках разобраться как оторвать исключения от использования rtti, возился в флагах, писать cxa, gxx и unwind с нуля, даже лез в ассемблерный код в попытках вырезать надоеду, но по итогу сдался и просто слепил всё из макросов.

Всем добра <3

Теги:
+3
Комментарии2

Проблема с samba и Windows 10 последних редакций:

Windows 10 упорно не видит *nix шары. Уже и SMB1 компонент включили, и wins с local master роли самбе выделили - тишина. При попытке в Проводнике увидеть соседний хост с samba получаем только локалхост windows.

Проблема оказалась в том, что последние редакции Windows 10, и, в особенности, Windows 11, более не используют NetBIOS определение соседей, или обзор сети. Теперь - только Web services.

И да, Avahi не поможет.

Решение оказалось смешным до безобразия:

  • на машину с samba ставим wsdd или wsdd2 (форк от Netgear на С)

  • на Windows отключаем (если включали) компонент SMB1 и разрешаем Network Discovery

  • Профит

Теги:
+4
Комментарии2

Эндрю Таненбаум получил премию ACM Software System Award 2023, ежегодно присуждаемую профильной Ассоциацией вычислительной техники (ACM).

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

ОС MINIX построена на базе микроядерной архитектуры. Базовое программное окружение Minix включает в себя большое число типичных для BSD-систем утилит и библиотек, портированных из NetBSD. Дополнительно в репозитории представлено около 700 пакетов с разнообразными приложениями. Исходные тексты MINIX распространяются под BSD-подобной лицензией. Среди прочего, MINIX используется в прошивке Intel Management Engine, которая поставляется во всех современных ПК и ноутбуках с чипами Intel.

Премия ACM Software System Award ежегодно вручается за разработку программных систем, оказавших определяющее влияние на отрасль, внеся в обиход новые концепции или раскрывших новые области коммерческого применения. Размер премии $35 тыс.

В прошлом году премию ACM получили проекты GCC и LLVM и их основатели Ричард Столлман и Крис Латнер. Премией также были отмечены такие проекты и технологии, как UNIX, Java, Apache, Mosaic, WWW, Smalltalk, PostScript, TeX, Tcl/Tk, RPC, Make, DNS, AFS, Eiffel, VMware, Wireshark, Jupyter Notebooks, Berkeley DB, seL4, и Eclipse.

Источник: OpenNET.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии1

Иксам (протоколу X Window System) исполнилось 40 лет.

19 июня 1984 года Роберт Шейфлер из MIT анонсировал в своём письме в список рассылки проекта Афина (Athena) работу над новой оконной системой X. Несколькими годами позже X стал стандартом для юникс-подобных систем и продолжает быть основной оконной системой в свободных ОС и по сей день.

Путь от выпуска X1 до X11 протокол прошёл всего за три года, после чего состояние X11 стабилизировалось и со временем лишь обрастает расширениями, но не меняет своей сути. Например, в качестве расширений в своё время были представлены такие распространённые возможности, как XVideo, X Font Server, XKB, Xinerama, XCB, Multi-Pointer X, Present, DRI2, DRI3, RandR, X Input и так далее.

В 2011 году возникла инициатива по созданию протокола X12, но она не ушла дальше обсуждений, а вся деятельность по развитию графической подсистемы сосредоточилась на развитии протокола Wayland.

Теги:
Всего голосов 3: ↑3 и ↓0+5
Комментарии1
Теги:
Всего голосов 4: ↑4 и ↓0+5
Комментарии1

Сообщество RISC OS Open представило выпуск ОС RISC OS 5.30, оптимизированной для создания встраиваемых решений на базе плат с процессорами ARM.

Выпуск основан на исходных текстах RISC OS, открытых в 2018 году компанией RISC OS Developments (ROD) под лицензией Apache 2.0.

Сборки RISC OS сформированы для плат Raspberry Pi, PineA64, BeagleBoard, Iyonix, PandaBoard, Wandboard, RiscPC / A7000, OMAP 5 и Titanium. Размер сборки для Raspberry Pi составляет 157 МБ.

RISC OS развивается с 1987 года и ориентирована в основном на создание специализированных встраиваемых решений на базе ARM-плат, обеспечивающих максимальную производительность. ОС не поддерживает вытесняющую многозадачность (только кооперативная) и является однопользовательской (все пользователи имеют права суперпользователя). Система состоит из ядра и модулей-надстроек, в том числе доступен модуль с простым оконным графическим интерфейсом и набор простых приложений. В графическом окружении используется кооперативная многозадачность. В качестве веб-браузера используется NetSurf.

В новом выпуске:

  • в разряд стабильных переведена поддержка платформы OMAP5, формированию первого стабильного выпуска для которой ранее мешали проблемы с видеодрайвером;

  • для всех платформ реализована полная поддержка ФС SparkFS с возможностью чтения и записи данных;

  • обновлена редакция RISC OS для плат Raspberry Pi.

  • обновлена коллекция приложений, среди прочего предложен новый выпуск браузера NetSurf 3.11;

  • максимальный размер RAM-диска увеличен до 2 ГБ.

Теги:
Всего голосов 3: ↑3 и ↓0+4
Комментарии0

Доступ к Youtube из Китая

? С утра в Гонконге было удивительно тихо. Только начавший пробиваться сквозь утренний туман свет солнца осветил наше творение - новый сервер. Месяцы подготовки, испытаний и усталости в конце концов привели нас к этому моменту. 

Наша команда внимательно следила за каждым шагом этого процесса, зная, что от нашей работы зависит многое. Мы думали о наших соотечественниках в Китае, о том, как они хотят свободно пользоваться Youtube, Ins**, Google, Fb, VK, Telegram. И вот, благодаря нашим стараниям, это стало возможно.

Сервер в Гонконге был готов к работе. Теперь, подключившись к нашей сети на тарифе MYSTERY, они смогут наслаждаться быстрым доступом к своим любимым ресурсам. 

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

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

Прямо сейчас для тарифа MYSTERY мы запустили 4 сервера AMD EPYC 9454P.

@blacktemple_spaceищите нас в ТГ

Теги:
Всего голосов 2: ↑0 и ↓2-2
Комментарии1

Друзья! Может кто‑то из моих читателей продаёт HTC Dream aka T‑Mobile G1? Сейчас готовлю новый материал из серии «сам себе экосистема», где пилю клиенты современных сервисов под смартфоны 14+ летней давности. В идеале, конечно, показать работоспособность клиента на самом первом Android‑смартфоне:) Тг — @monobogdan

Теги:
Всего голосов 7: ↑7 и ↓0+7
Комментарии1

Переход на дракона потерявшего память будет запланирован на 29/02

поддержите нас финансово если есть такая возможность - приходится мигрировать с дц на дц

https://t.me/blacktemple_space

Теги:
Всего голосов 3: ↑0 и ↓3-3
Комментарии0

Наш бесплатный проект связи продолжает расти.

Мы меняем протокол связи с носков на потерю памяти и будем выдавать сразу три ключа - дракона, дракона выносящего мусор и носки. Так же будет возможность менять регион. Весь проект работает в научных целях и не принуждает кого-либо что то делать или использовать, а самое главное нарушать законы РФ.
Если есть возможность поддержать, ждем Вас https://t.me/blacktemple_space

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Разработчики проекта FreeBSD опубликовали план прекращения поддержки 32-разрядных платформ.

В ветке FreeBSD 15 не будут поставляться платформы armv6, i386 и powerpc, а в ветке FreeBSD 16 будет прекращена поддержка платформы armv7. Возможность сборки 32-разрядных программ и использования режима COMPAT_FREEBSD32 для запуска 32-разрядных исполняемых файлов в окружении на базе 64-разрядного ядра сохранится как минимум до конца жизненного цикла ветки FreeBSD 16.

В качестве причин прекращения поддержки 32-разрядных архитектур упоминается снижение популярности 32-разрядных установок, смещение рынка аппаратного обеспечения в сторону 64-разрядных систем, вывод из эксплуатации 32-разрядного оборудования, а также нехватка у проекта FreeBSD ресурсов разработчиков на сопровождение устаревших платформ.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Кстати когда российские компании берут проект с открытым исходным кодом и делают затем из этого продукт – это абсолютно нормально в том числе и с юридической точки зрения. Многие западные компании поступают похожим образом. Amazon AWS как известно «под» капотом использует сотни разных open-source проектов.

Однако, необходимо заметить, что когда так делают RedHat или SUSE, то зачастую инженеры из этих компаний, активно участвуют в разработке открытой и коммерческой версии продукта:

Ansible AWX\Ansible Tower

В случае же с Oracle (Ansible AWX\Oracle Linux Automation Manager) нужно заниматься вендорингом (AWX представляет из себя сложное веб-приложение состоящее из тысяч зависимостей Python и Javascript и распространяется в виде образов Docker) – необходимо все эти зависимости протестировать и упаковать в deb или rpm пакеты; и отличную документацию:

https://docs.oracle.com/en/learn/olam-install/index.html#introduction

Российским компаниям работающим на рынке системного или платформенного программного обеспечения есть куда стремится.

https://www.syssoft.ru/astralinux/astra-automation
"Astra Automation, до 500 узлов и AL SE для 64-х на базе х86-64, уровень защ. Усиленный (Воронеж), для 10 серверов, на 12 мес., с upd Тип 1 на 12 мес.
Цена: 13 500 000 ₽
В КОРЗИНУ"

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии4

Joyent это интересный пример, того что нужно делать ставку на «скучные» технологии. Это компания, которая начала строить свое собственное облако в одно время с Amazon. В Joyent в разное время работал звездный состав инженеров и технологов.  

Ryan Dahl (Node.js), Bryan Cantrill (Dtrace, Illumos, OpenSolaris), Isaac Schlueter (Npm), Brendan Gregg(Гуру eBPF) и многие другие. Они строили облако на Illumos</span>SmartOS (Solaris), ОС которая на тот период времени, благородя зонам, Dtrace и ZFS по многим параметрам превосходил Linux.

Тем ни менее не сморя на «звездный состав» Joyent в итоге проиграл AWS, а затем и Openstack. Судя по всему Triton Data Center не смог прижиться и Samsung, после приобретения Joyent. Супер инновационный стек (для своего времени) в итоге проиграл Linux и Java. Хотя многие решения (особенно Manta object storage) превосходят конкурентов.

Думаю что одна из ключевых причин, почему это произошло – CI/CD. Такие масштабные проекты как LLVM, Ceph, Openstack требуют совершенно другого подхода к CI/CT/CD.

Специально для Openstack был с нуля написан CI фреймворк вместо Jenkins. Тоже самое можно сказать про Kubernetes.

«Shift Left» это про оптимизацию всех процессов DEV, BUILD, TEST. Для таких проектов не подходят готовые решения с полки.

Можно очень хорошо «сэкономить» если собирать и тестировать Ceph, KVM и Linux примерно на 20-30% быстрей, чем это происходит сейчас.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Ближайшие события

Demo-версия CoudStack доступна по адресу - https://qa.cloudstack.cloud/simulator/#/dashboard

admin:password

OpenStack это скорее freemium нежели open-source. Идеальный вариант для вендоров и интеграторов.

Почти ничего не работает «из коробки». Просто установить, но очень «дорого» развивать и поддерживать.

Развитием проекта управляет несколько крупных компаний, а не сообщество разработчиков.

Интерес к проекту постепенно падает.

Кроме Mirantis у которых был офис в России, насколько я знаю, никто больше ничего для upstream OpenStack – не делал.

Для CoudStack нужно сделать нечто похожее на DevStack OpenStack – «shift-left» окружение и автоматизация для разработчиков, которая снизит порог вхождения в проект.

VMware – это тупик с точки зрения развития. Больше 65% компаний в Китае используют гибридное облако (в основном OpenStack). Энергетика, Финансы, Телеком и образовательная сфера в Китае почти полностью на OpenStack.

В России все еще много VMware и Microsoft – у нас было традиционно очень сильное лобби интеграторов и продажников. Потом многие из этих людей оказались на хороших должностях в корпорациях. Им не выгодных резкие изменения. В многих таких компаниях планируют мигрировать инфраструктуру из 2005 года в 2012. То есть мигрировать на технологический стек чуть-чуть менее устаревший.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Мысли:

«Будущее» инфраструктуры – это виртуальные машины, а не контейнеры.

https://katacontainers.io/collateral/ApplicationOfKataContainersInBaiduAICloud.pdf

https://www.qemu.org/docs/master/system/i386/microvm.html

Микросервисы – это антипаттерн. Для микросервисов нужны микропрограммисты.

Возможно через несколько лет ИИ освободит человечество от необходимости заниматься рутинной работой, например писать код, но в 2023 Amazon AWS это: просто Java, Linux, QEMU-KVM, внутренний тулинг и кастомное «железо» (SmartNIC, свичи, СХД); просто Сервис-ориентированная архитектура (SOA), просто несколько тысяч программистов и отлична организация труда.

Без динамической инфраструктуры (так называемое облако) не возможно представить себе широкое проникновение ИИ. Без нескольких ключевых проектов с открытым исходным кодом не возможно представить себе современную инфраструктуру on-prem и «в облаке».

Как собрать Keycloak из исходников:

export MAVEN_OPTS="-Dmaven.build.cache.enabled=true"
export MAVEN_OPTS=-Xmx512m
./mvnw clean install -Pdistribution -DskipTests -am -pl quarkus/dist dependency:resolve -V -e -DskipExamples

[INFO] Total time:  08:54 min
[INFO] Finished at: 2024-01-11T11:51:52Z

cp quarkus/dist/target/keycloak-999.0.0-SNAPSHOT.tar.gz .

Теги:
Всего голосов 5: ↑3 и ↓2+1
Комментарии0

Два похожих проекта Jenkins и Keycloak - монолиты на Java с длинной историей и огромным количеством возможностей. Оба проекта успешно используются на современном стеке их можно использовать в парадигме GitOps, но есть одна проблема – они оба слишком гибкие и слишком сложные для новичков. Слишком много граблей расставлено, на которые можно случайно наступить, прочитав блог-пост, о том как нужно было использовать Jenkins или Keycloak в 2016.

  • Сложные Bash-скрипты и сценарии Make - это DevOps

  • Сборочный конвейер для под разные платформы и архитектуры - это DevOps

  • Автоматизированное тестирование - это конечно DevOps

Зависимость от какого-то определенного коммерческого продукта, неважно будет CircleCI, ArgoCD или Okrta© – это не DevOps. Это корпоративные продажи и интеграция – это другое направление.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Как AT&T мигрирует на CloudStack с помощью FreeIPA и MaaS:

https://www.youtube.com/watch?v=Bc1a8YHdEq4

Начиная с версии 4.14 CloudStack поддерживает импорт виртуальных машин напрямую из VMware vSphere.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Вышел проект Maestro по разработке на Rust легковесного Unix-подобного ядра, реализующего подмножество системных вызовов ядра Linux, достаточное для создания типовых рабочих окружений. Проект был создан в 2018 году и вначале использовал язык C, но в 2020 году был полностью перезапущен с нуля с учётом накопленного опыта и перешёл на Rust для снижения вероятности совершения ошибок, возникающих при работе с памятью.

Код проекта распространяется под лицензией MIT. Помимо ядра проектом на языке Rust также развиваются X11-сервер, пакетный менеджер, загрузчик, инсталлятор, наборы утилит и другие компоненты, необходимые для построения операционной системы.

Ядро на Rust имеет монолитную архитектуру и пока поддерживает только системы x86 в 32-разрядном режиме. Кодовая база ядра насчитывает 48.8 тыс. строк кода (для сравнения в ядре Linux - 33 млн. строк кода). Возможен запуск в QEMU, VirtualBox или поверх оборудования. На текущем этапе развития в Maestro реализован 31% (135 из 437) системных вызовов Linux, чего достаточно для загрузки консольного окружения на базе bash и стандартной С-библиотеки Musl. В окружении на базе Maestro также могут выполняться некоторые утилиты из набора GNU coreutils, такие как ls, cat, mkdir, rm, rmdir, uname и whoami.

Источник: OpenNET.

Теги:
Всего голосов 15: ↑15 и ↓0+15
Комментарии1

На днях с коллегами довелось восстанавливать FC коммутатор Brocade. В открытом доступе были скрипты, которые формировали из образа прошивки образ диска и записывали образ на Compact Flash. К сожалению, они были из 90-х и частично не работали. Мы изучили алгоритмы тех мест, которые не работали и исправили скрипты. Обновленный форк с пояснениями(P.S.) можете найти на github.

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

❓100 Вопросов по Машинному обучению (Machine Learning) - Вопрос_7

?Вопрос_7: Какие есть разновидности Adam optimization и в чем их разница ?

✔️Ответ:

  1. AdamW вводит дополнительное слагаемое в обновление параметров модели для уменьшения влияния больших значений параметров. Это помогает справиться с проблемой увеличения значений параметров во время обучения нейронных сетей, что может приводить к переобучению. Дополнительное слагаемое регуляризует обновление параметров и способствует лучшей обобщающей способности модели;

  2. Nadam (Nesterov-accelerated Adaptive Moment Estimation) является вариацией алгоритма Adam с коррекцией Nesterov Momentum. Она использует модификацию алгоритма Momentum для вычисления градиентов в моменты времени, отличные от текущего;

  3. AMSGrad (Adaptive Moment Estimation with Variance Correction) вводит исправление для оценки второго момента градиентов. Оно предотвращает возможное увеличение оценки второго момента в сравнении с алгоритмом RMSprop;

  4. AdaBelief использует адаптивные скорректированные оценки моментов и вводит дополнительные гиперпараметры для контроля скорости обучения и сглаживания оценок моментов;

  5. RAdam (Rectified Adam) вводит коррекцию для оценки первого момента градиентов, чтобы устранить проблему смещения оценки первого момента на начальных итерациях обучения. RAdam также включает в себя масштабирование скорости обучения на начальных итерациях для стабилизации процесса обучения.

    https://t.me/DenoiseLAB

Теги:
Всего голосов 3: ↑2 и ↓1+1
Комментарии1
1

Вклад авторов