Как работает протокол X11 на самом нижнем уровне.
X11 это тот механизм на чем работает весь графический интерфейс Unix подобных ОС.
Но мало кто знает как он работает на самом деле. Потому что с годами он оброс слоями и слоями библиотек, которые стремятся скрыть саму сущность протокола.
А протокол в своей сути прекрасен. Он лаконичен и почти совершенен.
В Интернете есть полная документация по протоколу. Но дело в том, что эта документация большая, написана не совсем ясным языком и по сути представляет просто спецификация. Важные моменты никак не обозначены, а как использовать тоже оставлено на фантазии читателя.
А все книги и статьи по использованию X11 описывают это через библиотеки прокладки типа XLib и XCB, и даже, что хуже, GTK или Qt.
Так что документацию приходится читать всю и самому выделять что важно, а что не очень. Придумывать сценарии использования и писать хотя бы короткие программы чтобы испробовать как все работает на самом деле.
Как бы то ни было, если кому-то интересно как все работает на самом деле, пожалуйста под кат.
Читать дальше →https://habr.com/ru/articles/712376
X11 это тот механизм на чем работает весь графический интерфейс Unix подобных ОС.
Но мало кто знает как он работает на самом деле. Потому что с годами он оброс слоями и слоями библиотек, которые стремятся скрыть саму сущность протокола.
А протокол в своей сути прекрасен. Он лаконичен и почти совершенен.
В Интернете есть полная документация по протоколу. Но дело в том, что эта документация большая, написана не совсем ясным языком и по сути представляет просто спецификация. Важные моменты никак не обозначены, а как использовать тоже оставлено на фантазии читателя.
А все книги и статьи по использованию X11 описывают это через библиотеки прокладки типа XLib и XCB, и даже, что хуже, GTK или Qt.
Так что документацию приходится читать всю и самому выделять что важно, а что не очень. Придумывать сценарии использования и писать хотя бы короткие программы чтобы испробовать как все работает на самом деле.
Как бы то ни было, если кому-то интересно как все работает на самом деле, пожалуйста под кат.
Читать дальше →https://habr.com/ru/articles/712376
Хабр
Как работает протокол X11 на самом нижнем уровне
X11 это тот механизм на чем работает весь графический интерфейс Unix подобных ОС. Но мало кто знает как он работает на самом деле. Потому что с годами он оброс слоями и слоями библиотек, которые...
👍10❤2🤔2
This media is not supported in your browser
VIEW IN TELEGRAM
Объяснение файловой системы Linux. Файловая система Linux раньше напоминала неорганизованный город, где люди строили свои дома там, где им заблагорассудится. Однако в 1994 году был введен стандарт иерархии файловой системы (FHS), чтобы навести порядок в файловой системе Linux. Внедряя такой стандарт, как FHS, программное обеспечение может обеспечить единообразную структуру в различных дистрибутивах Linux. Тем не менее, не все дистрибутивы Linux строго придерживаются этого стандарта. Они часто включают в себя свои уникальные элементы или удовлетворяют конкретным требованиям. Чтобы овладеть этим стандартом, вы можете начать с его изучения. Используйте такие команды, как «cd» для навигации и «ls» для просмотра содержимого каталога. Представьте файловую систему в виде дерева, начиная с корня (/). Со временем это станет для вас второй натурой, превратив вас в опытного администратора Linux.
👍19❤4😱2
systemd глазами разработчика дистрибутива musl
https://catfox.life/2024/01/05/systemd-through-the-eyes-of-a-musl-distribution-maintainer/
https://catfox.life/2024/01/05/systemd-through-the-eyes-of-a-musl-distribution-maintainer/
The Cat Fox Life
systemd through the eyes of a musl distribution maintainer
Welcome back to FOSS Fridays! This week, I’m covering a real pickle. I’m acutely aware of the flames this blog post will inspire, but I feel it is important to write nevertheless. I volunteer my ti…
💩2
Оптимизация сети в Linux 6.8 может повысить производительность TCP для многих одновременных подключений примерно на 40 %
https://www.phoronix.com/news/Linux-6.8-Networking
https://www.phoronix.com/news/Linux-6.8-Networking
Phoronix
Linux 6.8 Network Optimizations Can Boost TCP Performance For Many Concurrent Connections By ~40%
Beyond the usual new wired/wireless network hardware support and the other routine churn in the big Linux networking subsystem, the Linux 6.8 kernel is bringing some key improvements to the core networking code that can yield up to a ~40% improvement for…
👍2
В новый год с новым ядром: что нового и интересного в Linux 6.7?
Начало 2024 года приятное — вышел релиз ядра Linux 6.7. Как всегда, есть новости, изменения, кроме того, из ядра убрали устаревшие компоненты. Среди новинок можно отметить прекращение поддержки архитектуры Itanium, добавление ФС Bcachefs, а также поддержку futex в io_uring. https://habr.com/ru/companies/selectel/articles/785010/
Начало 2024 года приятное — вышел релиз ядра Linux 6.7. Как всегда, есть новости, изменения, кроме того, из ядра убрали устаревшие компоненты. Среди новинок можно отметить прекращение поддержки архитектуры Itanium, добавление ФС Bcachefs, а также поддержку futex в io_uring. https://habr.com/ru/companies/selectel/articles/785010/
Хабр
В новый год с новым ядром: что нового и интересного в Linux 6.7?
Начало 2024 года приятное — вышел релиз ядра Linux 6.7 . Как всегда, есть новости, изменения, кроме того, из ядра убрали устаревшие компоненты. Среди новинок можно отметить прекращение поддержки...
👍7
Загрузка драйверов в ядре Linux
Почти все знают, как написать простой драйвер под Linux. На эту тему много материалов в сети. Очень мало информации о том, что находится "под капотом" у процедуры загрузки драйверов.
https://habr.com/ru/articles/785358/
Почти все знают, как написать простой драйвер под Linux. На эту тему много материалов в сети. Очень мало информации о том, что находится "под капотом" у процедуры загрузки драйверов.
https://habr.com/ru/articles/785358/
Хабр
Загрузка драйверов в ядре Linux
Почти все знают, как написать простой драйвер под Linux. На эту тему много материалов в сети. Очень мало информации о том, что находится "под капотом" у процедуры загрузки драйверов. Это мало кому...
🔥5👍2🥰1
📌 Kubernetes — это база.
А Слёрм запускает базовый курс по k8s уже в январе.
В процессе обучения вы:
▪️разберете основы работы с Kubernetes, устройство кластера и отказоустойчивость;
▪️познакомитесь с продвинутыми абстракциями в k8s;
▪️научитесь подключать системы хранения данных на примере Ceph;
▪️узнаете, как работают DNS-сервисы, Helm и CI/CD.
Вас ждут подробные видеоуроки, практика на стендах в личном кабинете, АМА-сессии со спикерами и итоговая сертификация в конце курса.
🎁 Бонус для всех, кто хочет начать заниматься сразу — бесплатный доступ к первому модулю.
Поток стартует 17 января. Не упустите шанс сохранить для себя цены 2023 года — присоединяйтесь прямо сейчас!
Изучить программу и присоединиться к курсу
А Слёрм запускает базовый курс по k8s уже в январе.
В процессе обучения вы:
▪️разберете основы работы с Kubernetes, устройство кластера и отказоустойчивость;
▪️познакомитесь с продвинутыми абстракциями в k8s;
▪️научитесь подключать системы хранения данных на примере Ceph;
▪️узнаете, как работают DNS-сервисы, Helm и CI/CD.
Вас ждут подробные видеоуроки, практика на стендах в личном кабинете, АМА-сессии со спикерами и итоговая сертификация в конце курса.
🎁 Бонус для всех, кто хочет начать заниматься сразу — бесплатный доступ к первому модулю.
Поток стартует 17 января. Не упустите шанс сохранить для себя цены 2023 года — присоединяйтесь прямо сейчас!
Изучить программу и присоединиться к курсу
Совет дня для Linux 💡🐧
В Linux вы можете использовать команду pgrep, чтобы найти PID определенного процесса на основе его имени, шаблона или других критериев.
$ pgrep имя
Если вы хотите завершить процесс, используйте команду kill, например:
$ kill -9 5272 5525 5550 5461
Или используйте подстановку команд, чтобы получить идентификаторы процессов и убить их в одной строке:
$ kill -9 $(pgrep firefox)
В качестве альтернативы можно использовать команду pidof. Посмотрите на этот пример:
$ kill -9 $(pidof firefox)
В Linux вы можете использовать команду pgrep, чтобы найти PID определенного процесса на основе его имени, шаблона или других критериев.
$ pgrep имя
Если вы хотите завершить процесс, используйте команду kill, например:
$ kill -9 5272 5525 5550 5461
Или используйте подстановку команд, чтобы получить идентификаторы процессов и убить их в одной строке:
$ kill -9 $(pgrep firefox)
В качестве альтернативы можно использовать команду pidof. Посмотрите на этот пример:
$ kill -9 $(pidof firefox)
👍21💩4❤2
Forwarded from Network architecture and Administration
Кручу-верчу, запутать хочу
Салют! В этой небольшой статье я попытался собрать необычные и малоизвестные трюки с перенаправлениями в bash, которые могут значительно упростить работу.
https://habr.com/ru/articles/786224/
Салют! В этой небольшой статье я попытался собрать необычные и малоизвестные трюки с перенаправлениями в bash, которые могут значительно упростить работу.
https://habr.com/ru/articles/786224/
Хабр
Кручу-верчу, запутать хочу
Салют! В этой небольшой статье я попытался собрать необычные и малоизвестные трюки с перенаправлениями в bash, которые могут значительно упростить работу. /dev/tcp Многие пользователи Linux не...
👍6🔥3
Когда вы запускаете программу на терминале или по SSH, она будет завершена, как только закончится терминальная сессия (при выходе из терминала) или оборвется соединение.
Чтобы избежать этого и сохранить программу и все ее процессы, используйте команду nohup, сокращение от "no hangup". Она игнорирует все сигналы о зависании, позволяя процессу продолжаться, даже если терминальная сессия прервана.
Например, чтобы сжать большой объем данных с помощью команды tar и гарантировать, что сжатие продолжится, даже если вы случайно закроете окно терминала, используйте следующую команду:
$ nohup tar -cf archive.tar file1 file2
Команда nohup также создает файл с именем nohup.out для хранения вывода команды.
$ cat nohup.out
В качестве альтернативы можно использовать tmux, disown или screen.
Чтобы избежать этого и сохранить программу и все ее процессы, используйте команду nohup, сокращение от "no hangup". Она игнорирует все сигналы о зависании, позволяя процессу продолжаться, даже если терминальная сессия прервана.
Например, чтобы сжать большой объем данных с помощью команды tar и гарантировать, что сжатие продолжится, даже если вы случайно закроете окно терминала, используйте следующую команду:
$ nohup tar -cf archive.tar file1 file2
Команда nohup также создает файл с именем nohup.out для хранения вывода команды.
$ cat nohup.out
В качестве альтернативы можно использовать tmux, disown или screen.
👍31😁3👎2🥰1
Если вы хотите определить, сколько времени займет выполнение определенной команды или сценария, используйте команду time.
Вот синтаксис:
$ time <команда здесь>.
Посмотрите на этот пример:
$ time find / -perm -u=s -type f &>/dev/null
Она также показывает использование системных ресурсов процесса, что делает ее полезным инструментом для оценки эффективности конкретной команды.
Вот синтаксис:
$ time <команда здесь>.
Посмотрите на этот пример:
$ time find / -perm -u=s -type f &>/dev/null
Она также показывает использование системных ресурсов процесса, что делает ее полезным инструментом для оценки эффективности конкретной команды.
👍11
6 февраля приглашаем на Зимнюю ярмарку вакансий, которая пройдёт офлайн и онлайн. Это классная возможность стать частью IT-сообщества Яндекса и познакомиться с теми, кто создаёт сервисы с многомиллионной аудиторией.
Что вас ждёт
Узнаете о новых вакансиях и задачах, а также сможете лично пообщаться с командами и подать заявку туда, где понравится больше всего.
Узнаете о технологиях и кейсах из практики экспертов Яндекса. Лекции пройдут по основным направлениям стажировки: бэкенд, фронтенд, мобильная разработка, аналитика и машинное обучение.
Узнаете, как они проходили отбор, как готовились и чем планируют заниматься дальше. Сейчас в Яндексе стажируются более 600 человек — им есть что рассказать.
Как принять участие
Чтобы попасть на ярмарку, нужно пройти предварительный отбор — решить задачи на Яндекс Контесте до 31 января включительно. Тех, кто решит все задачи из Контеста, мы пригласим на вечернее закрытое шоу «Все в плюсе».
Узнать подробности и подать заявку: [ клик! ]
#ЗимняяЯрмаркаВакансий
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Как работает сеть контейнеров: сеть Docker Bridge с нуля
https://labs.iximiuz.com/tutorials/container-networking-from-scratch
https://labs.iximiuz.com/tutorials/container-networking-from-scratch
iximiuz Labs
How Container Networking Works: Building a Bridge Network From Scratch | iximiuz Labs
Begin with the basics to understand Docker and Kubernetes networking: learn how to create and interconnect Linux network namespaces using only command-line tools.
👍6👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Только линукс!!!
Вы бы когда-нибудь перешли на Windows после того, как попробовали Linux?
Вы бы когда-нибудь перешли на Windows после того, как попробовали Linux?
👍44😁5🤔3👎2
"Хитрости" командной строки, которые можно изучить быстрее, чем выпить утренний кофе
https://www.freecodecamp.org/news/command-line-tricks-you-can-learn-quickly
https://www.freecodecamp.org/news/command-line-tricks-you-can-learn-quickly
freeCodeCamp.org
Command Line Tricks You Can Learn Faster than Drinking Your Morning Coffee
In this short tutorial, I want to share with you a few tricks and tips to help you deal with some common situations when you're working in the Linux command line. We will cover the following: find xargs and nproc taskset numactl watch inotify-t...
👍5
Forwarded from Hacker news - новости из мира хакинга и IT-технологий!
🚨Новая уязвимость glibc (CVE-2023-6246) дает злоумышленникам root-доступ в #Linux..
Эта серьезная #уязвимость затрагивает такие основные дистрибутивы, как Debian, Ubuntu и Fedora.
https://blog.qualys.com/vulnerabilities-threat-research/2024/01/30/qualys-tru-discovers-important-vulnerabilities-in-gnu-c-librarys-syslog
Эта серьезная #уязвимость затрагивает такие основные дистрибутивы, как Debian, Ubuntu и Fedora.
https://blog.qualys.com/vulnerabilities-threat-research/2024/01/30/qualys-tru-discovers-important-vulnerabilities-in-gnu-c-librarys-syslog
💩7
Линус Торвальдс опубликовал одно из своих самых резких сообщений в списке рассылки ядра Linux за последние годы, раскритиковав участника из Google за его предложения относительно файловых систем.
https://www.theregister.com/2024/01/29/linux_6_8_rc2/
https://www.theregister.com/2024/01/29/linux_6_8_rc2/
The Register
Linus Torvalds flames Google kernel contributor over filesystem suggestion
Kernel 6.8-rc2 debuts after very robust discussion about 'inodes'
👍11💩6🔥1