LINUX.ORG.RU

Избранные сообщения zudwa

NAS

Форум — Linux-hardware

Собственно кто-что посоветует чтоб было дешево и linux нормально работал? Готовые железяки или ручками собирать самому? Хочется домашнюю файлопомойку без облаков, RAID 1. Хранить планируется около 8 терабайт (сейчас реально 4-5 терабайт, но 3 в запас под всё что может потребоваться). Хорошо если получится использовать не только как бекап систему, но и как своё облако (удалённая сетевая папка, samba, файлокачалка/торрентокачалка, домашний медиасервер (DLNA?), TFTP для локалки, возможно ownCloud, git-репа, пара своих веб-приложений, может легенький сайтик поднять на который не ожидается большая нагрузка, может ещё что-то что я не вспомнил сразу).

 ,

peregrine
()

Что почитать C++ программистам

Статьи — Разработка

Предлагаю вашему вниманию две бесплатные электронные книги. Первая написана мной: «Вредные советы для C++ программистов» (PDF-формат). Это переработанный под печать вариант «60 антипаттернов для С++ программиста». Если вы уже читали 60 антипаттернов, то, пожалуй, читать новый вариант смысла нет. А если нет, то рекомендую — это и возможность местами улыбнуться, и польза.

Теперь про вторую книгу: «Путеводитель C++ программиста по неопределённому поведению». Здесь я был редактором, автор: Дмитрий Свиридкин. Книга опубликована частями, ссылки на которые приведены ниже. Сейчас Дмитрий перерабатывает материал под книжное издание, но это отдельная история.

  1. Часть 1: предисловие, что такое неопределённое поведение, и как оно проявляется, сужающие преобразования и неявное приведение типов.
  2. Часть 2: переполнение целых знаковых чисел, числа с плавающей точкой, integer promotion, char и знаковое расширение.
  3. Часть 3: висячие ссылки, string_view, синтаксический сахар с ложкой дёгтя (range-based for), self-reference, std::vector и инвалидация ссылок.
  4. Часть 4: списки захвата лямбда-функций, кортежи, внезапная мутабельность, неявные ссылки, use-after-move, lifetime extension.
  5. Часть 5: Most Vexing Parse, неконстантные константы, семантика перемещения, std::enable_if_t против std::void_t, забытый return.
  6. Часть 6: эллипсис и функции, operator [], iostreams (счастливой отладки!), оператор запятая, function-try-block, типы «нулевого» размера.
  7. Часть 7: NULL-терминированные строки, std::shared_ptr, (не)явное приведение типов, как передать стандартную функцию и ничего не сломать.
  8. Часть 8: бесконечные циклы и проблема остановки, рекурсия, ложный noexcept, переполнение буфера.
  9. Часть 9: (N)RVO vs RAII, разыменование нулевых указателей, static initialization order fiasco, static inline, нарушение ODR, зарезервированные имена.
  10. Часть 10: тривиальные типы и ABI, неинициализированные переменные, С++20 unbounded ranges, невиртуальные виртуальные функции, VLA.
  11. Часть 11: невалидные указатели, placement new для массивов, data race, повторный захват mutex, сигнало(не)безопасность, как сделать всё правильно и уйти в deadlock.
  12. Часть 12: std::vector::reserve и std::vector::resize, невыровненные ссылки, время жизни и смерти, статический анализ и UB, заключение.

И последнее: если пропустили, в конце 2024 года, как всегда, вышла подборка про самые интересные из найденных нами багов: Топ-10 ошибок в C и C++ проектах за 2024 год.

 ,

Andrey_Karpov_2020
()

Дешёвый одноплатник с модемом

Форум — Linux-hardware

Привет, ЛОР!
А есть ли в природе дешёвые одноплатники (дешевле $100) со встроенным 4G-модемом, которые бы работали на онтопике?

Всё, что удалось найти – либо партией от 1000 штук по индивидуальным запросам, либо от 200 баксов.

По остальным требованиям ничего необычного, думаю, 2 ГБ памяти есть сейчас даже на собаке.
upd: а, ну очевидно, что необходима корректная работа под онтопиком (Debian?).

 ,

ann_eesti
()

Приложения и утилиты, которые стоит попробовать

Статьи — Администрирование
Приложения и утилиты, которые стоит попробовать

Многие пользователи Linux с большим стажем даже не подозревают о существовании этих замечательных инструментов, которые способны облегчить им жизнь…

( читать дальше... )

 , ,

rtxtxtrx
()

Документация к языкам программирования

Форум — Development

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

Мне захотелось скачать себе документацию в подобном виде для C и C++. Зашёл на их официальные сайты, там описание стандарта предлагают получить на сайте ISO за немалые суммы денег. Да и само описание стандарта далеко не для обучения. Хорошо, подумал я, попробую тогда посмотреть документацию к одной из реализаций языка - GCC-CPP, и вижу, что описанное там тоже вовсе не подходит для обучения. Даже описания типов и примеров объявления нет (может плохо искал, но в заголовках не заметил).

Нет, это не тред «подскажите книгу по Сям», таких для начинающих я и сам могу гору насоветовать.

Вопрос следующий: существует ли нормальная доступная бесплатная документация по которой можно изучать C, C++? Официальная документация по другим языкам была бы тоже интересна.


Update

C, C++
Online-ресурсы и учебные пособия для начинающих:

Как дополнение: Рабочая версия стандарта C++14 от 19 ноября 2014 г. (с официального сайта стандарта)


Fortran


Python
В дополнение к официальной документациипереводу руководства Python 3.1):


Object Pascal. Lazarus

Перемещено Klymedy из talks

 , , , ,

grem
()

LevelDB vs Redis vs что-то ещё на большом потоке ключей на вставку.

Форум — Development

Да-да, LevelDB - это не сервер, а либа. Предположим мы прикрутим к ней некий бинарный протокол и через epoll будем слушать сеть как redis.

Вопрос такой: кто из них выдержит большее число ключей на вставку в секунду? Не беря в рассчёт то, что иногда память кончается, LevelDB это умеет класть на диск порциями (LSM tree), а redis только целиком делать снепшот - это пока не важно.

Как я понимаю, LevelDB вставляет новые ключи в skiplist в памяти, а redis вставляет новые ключи в хеш-табличку и кажется, что второе побыстрее (да, теряется инфа про порядок ключей, сортировку).

 

igloev
()

Выбор перспективного фреймворка для REST Api

Форум — Web-development

Всем привет. Пытаюсь выбрать «идеальный» бэкенд-фреймворк для REST Api либо на Питоне, либо на Go. Конкретные кейсы не озвучу, потому что скажешь «блог» - посоветуют Вордпресс. Выбор между этими языками странный, согласен, но все же. Выбираю между aiohttp (Python), fastapi (Python) и gin/gonic (Golang). Синхронщину типа Flask (Python) я отмёл, потому что, мне кажется, в плане производительности их в 2019 уже не особо перспективно использовать. Тем более, что особой разницы в плане «удобства» разработки, что на Flask, что на aiohttp нет (оба микрофреймворки), а второй явно шустрее. В Django много лишнего, а drf для него медленный очень - тоже отмел. Помогите определиться с выбором, на чем из перечисленного на текущий момент пилить REST Api более перспективно и удобно сайты среднего размера различной тематики у которых фронтенд в виде SPA? Ну, скажем, современный интернет-магазин. Есть ли вообще смысл юзать питоновскую асинхронщину нынче, когда есть го?

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

 , ,

dimuska139
()

А понадавайте мест где всякие bounty проходят, пожалуйста.

Форум — Talks

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

Агрегирую для залётных

https://www.bountysource.com/
https://github.com/flightaware/Tcl-bounties
https://github.com/swaywm/sway/issues/986

Перемещено leave из job

 ,

Deleted
()

Актуальность книги Linux Device Drivers

Форум — Development

Совсем недавно я приступил к изучению Linux Device Drivers, третьей редакции. Там сказано, что примеры должны работать с ядром версии 2.6, а у меня 4.10. Какие проблемы могут возникнуть с запуском кода из книги и как их можно избежать?

 , ,

Gargamel
()

Свой объект для epoll

Форум — Development

Вот есть у меня, предположим, какой-то свой объект в разделяемой памяти. Хочу чтобы при его изменении, я мог сделать какой-нибудь вызов, а другое приложение это поймало при помощи epoll. (точнее libev).

UPD: Процессы разные.

 , ,

vromanov
()

Всяких интересностей на С поиск

Форум — Development

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

  • KORE.io - веб разработка на С. Фреймворк https://kore.io позволяет делать высокопроизводительные сетевые сервисы, есть механизмы работы с БД, https по умолчанию, вебсокеты и много других плюшек, что позволяет слать всякие нодыжс в топку гореть.
  • libcello - высокоуровневая надстройка над С http://libcello.org, создана по приколу Даниелем Холденом для упрощения написания прикладного софта на С, есть отключаемый GC, работа со строками, foreach, таблицы, деревья и другие абстрактные типы. Позволяет писать железобетонный код шля в топку Ратоманов с их контролем памяти )

Есть у вас в закромах всякие удобные и полезные приколюхи на С ?

 

Dron
()

CAN шина и Linux

Форум — Development

Добрый день, господа. Скорее всего в сообществе lor есть люди, которые работали со связкой Linux+CAN, возможно кто-то поможет советами.

Я полностью 0 с шиной и не работал с не ни на стороне МК, ни на стороне Linux. Собственно в основном у меня следующие вопросы:

  • Краткий и сзажий, но информативный мануал ( это и вот это я уже видел, нифига не кратко и сжато). Киньте ссылкой, пожалуйста.
  • В каком направлении копать по интеграции linux<-->CAN? (очень бы хотелось мануал с простенькими примерами)
  • Среды разработки/Дебагер (НЕ обязательно open и под ontopic). Имеется в виду не только среды разработки ПО для МК, но и среды дебага схем, где можно мышкой натыкать компоненты и связи, залить прошивку в виртуальный контроллер и посмотреть как оно работает.

Задача: есть одноплатный компьютер Cubieboard (опционально. На его место может стать Эдисон или еще чего-нибудь). К нему, по CAN хочется подключить рассредоточеные контроллеры, которые будут собирать информацию с датчиков, отдавать управляющий сигнал на двигатели.

CAN выбрал по причинам: универсальность, помехозащищенность, популярность.
Ethernet НЕ выбрал по причине: overkill (в моем случае).

сексуальные предпочтения в основном работаю с PIC'ами, не люблю arduino

Вызываю владык ncrmnt, Puzan, Eddy_Em, Zubok и всех, кто может помочь

 , ,

disee
()

Помогите нагуглить военный стандарт написания на C

Форум — Development

Чет вместо US Military C coding convention гуглится все что угодно кроме того что надо.

 ,

someoneelsenotme
()