🥑 Подборка лучших статей «Библиотеки devops'a» за апрель: сохраняй в заметки, чтобы не пропустить #самыйсок
🐛 7 признаков неопытного программиста
✍️ Как написать отличную документацию
⚙️ Названия веток и комментарии к коммитам в Git: лучшие практики
🙅♂️ Дискриминация на работе: в чем проявляется и что делать, если вы с ней столкнулись
🧑💻 Как я входил в IT: опыт подписчиков «Библиотеки программиста»
🛠 Что такое прогрессивные веб-приложения
🌐 Использование глобальной контрольной группы на практике: тонкости, нюансы, подводные камни
🤺 Искусство оскорблять: как поставить коллегу на место и отбить желание работать над проектом
🤖💣 ИИ-ассистенты разработчика: скрытая угроза
🔍💼 Исследование рынка: 8 наиболее востребованных языков программирования в 2024 году
🗿🔨 Как мы разбили монолит на маленькие кусочки и что из этого вышло
🗺💼 Из Москвы в Дублин: опыт российского разработчика из Amazon
🐛 7 признаков неопытного программиста
✍️ Как написать отличную документацию
⚙️ Названия веток и комментарии к коммитам в Git: лучшие практики
🙅♂️ Дискриминация на работе: в чем проявляется и что делать, если вы с ней столкнулись
🧑💻 Как я входил в IT: опыт подписчиков «Библиотеки программиста»
🛠 Что такое прогрессивные веб-приложения
🌐 Использование глобальной контрольной группы на практике: тонкости, нюансы, подводные камни
🤺 Искусство оскорблять: как поставить коллегу на место и отбить желание работать над проектом
🤖💣 ИИ-ассистенты разработчика: скрытая угроза
🔍💼 Исследование рынка: 8 наиболее востребованных языков программирования в 2024 году
🗿🔨 Как мы разбили монолит на маленькие кусочки и что из этого вышло
🗺💼 Из Москвы в Дублин: опыт российского разработчика из Amazon
❤53👍3👏1
Forwarded from Библиотека собеса по DevOps | вопросы с собеседований
Что делает kube-scheduler?
Kube-scheduler позволяет узлам планировать только что созданные модули. Он определяет, какие узлы являются лучшими для каждого модуля в очереди планирования в соответствии с доступными ресурсами и ограничениями. Этот планировщик выбирает оптимальный узел для каждого нового или незапланированного пода, на котором они будут работать. Но тем не менее, каждый контейнер в подах имеет разные требования к ресурсам и потребностям.
Kube-scheduler позволяет узлам планировать только что созданные модули. Он определяет, какие узлы являются лучшими для каждого модуля в очереди планирования в соответствии с доступными ресурсами и ограничениями. Этот планировщик выбирает оптимальный узел для каждого нового или незапланированного пода, на котором они будут работать. Но тем не менее, каждый контейнер в подах имеет разные требования к ресурсам и потребностям.
🔥3👍2🥰1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
👁️💼 Открытые и скрытые вакансии в IT: как найти работу мечты
Существует целый пласт скрытых вакансий, о которых знает ограниченный круг лиц. Как найти эти вакансии и не упустить свой шанс? Читайте в нашей статье.
🔗 Читать статью
🔗 Зеркало
Существует целый пласт скрытых вакансий, о которых знает ограниченный круг лиц. Как найти эти вакансии и не упустить свой шанс? Читайте в нашей статье.
🔗 Читать статью
🔗 Зеркало
👍3🎉2
#дайджест выходного дня
❎ pgdsat — инструмент для анализа безопасности PostgreSQL сервера
❎ Пишем собственный гипервизор — 2 части по написанию с нуля простого гипервизора на базе KVM
❎ Почему мы запускаем FreeBSD в Netflix — о том, как автор ковыряется во FreeBSD-current, о вкладе и о достижениях в области производительности
❎ Как без даунтайма объединить кластеры Kubernetes и сократить затраты на инфраструктуру — на встрече, инженер расскажет, как безболезненно объединить кластеры Kubernetes, оптимизировать инфраструктуру и повысить безопасность трафика
❎ Минимизация on-call burnout с помощью наблюдения за алертами — автор подробно расскажет о наблюдении за оповещениями, об их важность и как все это работает в Cloudflare
❎ pgdsat — инструмент для анализа безопасности PostgreSQL сервера
❎ Пишем собственный гипервизор — 2 части по написанию с нуля простого гипервизора на базе KVM
❎ Почему мы запускаем FreeBSD в Netflix — о том, как автор ковыряется во FreeBSD-current, о вкладе и о достижениях в области производительности
❎ Как без даунтайма объединить кластеры Kubernetes и сократить затраты на инфраструктуру — на встрече, инженер расскажет, как безболезненно объединить кластеры Kubernetes, оптимизировать инфраструктуру и повысить безопасность трафика
❎ Минимизация on-call burnout с помощью наблюдения за алертами — автор подробно расскажет о наблюдении за оповещениями, об их важность и как все это работает в Cloudflare
❤29👍10❤🔥2🥰1
💁💁 Пример Envoy Gateway в Extension Service
Это служба расширения для Envoy Gateway. В ней используется API Envoy Gateway для добавления поддержки нового пользовательского типа (GlobalLuaScript). Служба прослушивает запросы на изменение ресурсов xDS от Envoy Gateway и затем может вносить любые изменения в xDS, сгенерированные Envoy Gateway.
По сути, это отдельный контроллер который делает реконсайл CR объектов и на основании CR отвечает на хуки от Envoy Gateway Controller.
Подробнее тут
#гайд
Это служба расширения для Envoy Gateway. В ней используется API Envoy Gateway для добавления поддержки нового пользовательского типа (GlobalLuaScript). Служба прослушивает запросы на изменение ресурсов xDS от Envoy Gateway и затем может вносить любые изменения в xDS, сгенерированные Envoy Gateway.
По сути, это отдельный контроллер который делает реконсайл CR объектов и на основании CR отвечает на хуки от Envoy Gateway Controller.
Подробнее тут
#гайд
❤54❤🔥2🥰1🎉1
Самые полезные каналы для программистов в одной подборке!
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
❤2🥰1
DefectDojo — это платформа для DevSecOps, которая упрощает работу DevSecOps, выступая в качестве агрегатора и единого окна для ваших инструментов безопасности. Сервис обладает интеллектуальными функциями для улучшения и настройки результатов работы ваших средств безопасности, включая возможность объединять результаты, запоминать ложные срабатывания и удалять дубликаты. DefectDojo также интегрируется с JIRA, предоставляет показатели и отчеты, а также может использоваться для управления традиционными ручными тестами.
Что делает DefectDojo?
Хотя автоматизация и эффективность являются конечными целями, DefectDojo по своей сути является баг-трекером. Использование преимуществ продукта DefectDojo: модели взаимодействия обеспечивает прослеживаемость между несколькими проектами / циклами тестирования и позволяет создавать детализированную отчетность.
#софт
Что делает DefectDojo?
Хотя автоматизация и эффективность являются конечными целями, DefectDojo по своей сути является баг-трекером. Использование преимуществ продукта DefectDojo: модели взаимодействия обеспечивает прослеживаемость между несколькими проектами / циклами тестирования и позволяет создавать детализированную отчетность.
#софт
👍13❤4🔥1
💥💥 Быстрая, декларативная, воспроизводимая и компонуемая среда разработки с использованием Nix
DevEnv
👉 Переменные среды
Используйте атрибут env для определения переменных среды.
Если хотите включить секреты из файла .env, установите dotenv.enable = true;.
👉 Пакеты
Есть возможность выбрать из 80000+ готовых пакетов для Linux/macOS и X64/Arm64. Работает с WSL 2.
👉 Запуск скриптов при входе в среду
Подготовьте свою среду при входе в оболочку, в которой уже загружена среда.
👉 Автоматическая загрузка среды при входе в проект
Использование direnv автоматически загрузит среду при входе в каталог проекта.
👉 Простая установка
1. Установка Nix
sh <(curl -L https://nixos.org/nix/install) --daemon
2. Установка devenv
nix-env -iA devenv -f https://github.com/NixOS/nixpkgs/tarball/nixpkgs-unstable
Доки и блог здесь
#софт
DevEnv
👉 Переменные среды
Используйте атрибут env для определения переменных среды.
Если хотите включить секреты из файла .env, установите dotenv.enable = true;.
👉 Пакеты
Есть возможность выбрать из 80000+ готовых пакетов для Linux/macOS и X64/Arm64. Работает с WSL 2.
👉 Запуск скриптов при входе в среду
Подготовьте свою среду при входе в оболочку, в которой уже загружена среда.
👉 Автоматическая загрузка среды при входе в проект
Использование direnv автоматически загрузит среду при входе в каталог проекта.
👉 Простая установка
1. Установка Nix
sh <(curl -L https://nixos.org/nix/install) --daemon
2. Установка devenv
nix-env -iA devenv -f https://github.com/NixOS/nixpkgs/tarball/nixpkgs-unstable
Доки и блог здесь
#софт
❤15🥰2❤🔥1
🛟🛟 Sveltos: Kubernetes add-on controller
Sveltos — это add-on controller Kubernetes, который упрощает развертывание и управление надстройками и приложениями в нескольких кластерах. Он работает в кластере управления и может программно развертывать надстройки и приложения и управлять ими в любом кластере парка, включая сам кластер управления. Sveltos поддерживает множество дополнительных форматов, включая Helm charts, raw YAML, Kustomize, Carvel ytt и Jsonnet.
Вот тут подробнее
#софт
Sveltos — это add-on controller Kubernetes, который упрощает развертывание и управление надстройками и приложениями в нескольких кластерах. Он работает в кластере управления и может программно развертывать надстройки и приложения и управлять ими в любом кластере парка, включая сам кластер управления. Sveltos поддерживает множество дополнительных форматов, включая Helm charts, raw YAML, Kustomize, Carvel ytt и Jsonnet.
Вот тут подробнее
#софт
👍18❤🔥1🥰1
Очередной #дайджест по DevOps
➕ Почему ни в коем случае НЕ надо становиться DevOps инженером — предостережения начинающим и совет что же делать если «НЕ»
➕ Надежная поставка программного обеспечения — методы построения гибкого и безопасного конвейера разработки кода
➕ AWS Weekly Roundup — новые возможности в Amazon Bedrock, AWS Amplify Gen 2, Amazon RDS
➕ Dokploy — бесплатная автономная PaaS, которая упрощает развертывание приложений и БД и управление ими с помощью Docker и Traefik
➕ Поговорим о методологии DevOps — вебинар 25 мая
➕ Почему ни в коем случае НЕ надо становиться DevOps инженером — предостережения начинающим и совет что же делать если «НЕ»
➕ Надежная поставка программного обеспечения — методы построения гибкого и безопасного конвейера разработки кода
➕ AWS Weekly Roundup — новые возможности в Amazon Bedrock, AWS Amplify Gen 2, Amazon RDS
➕ Dokploy — бесплатная автономная PaaS, которая упрощает развертывание приложений и БД и управление ими с помощью Docker и Traefik
➕ Поговорим о методологии DevOps — вебинар 25 мая
❤🔥12🎉11❤3👍1🥰1
❗«Библиотека программиста» продолжает поиски контент-менеджера для ведения телеграм-каналов
Ищем человека, который грамотно пишет и разбирается в одной из этих тем:
👉Java
👉DevOps
👉тестирование
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Подробнее о вакансии и форма для отклика — по ссылке.
Ждем вас в команде!
Ищем человека, который грамотно пишет и разбирается в одной из этих тем:
👉Java
👉DevOps
👉тестирование
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Подробнее о вакансии и форма для отклика — по ссылке.
Ждем вас в команде!
👍2❤1🎉1
Forwarded from Библиотека задач по DevOps | тесты, код, задания
Какой ресурс Kubernetes отвечает за управление доступом к сетевым сервисам внутри кластера?
Anonymous Quiz
19%
Gateway
36%
Ingress
42%
Service
3%
Под
❤1🔥1
💪💪 Простая навигация по прокси-серверам: новые возможности в Docker Desktop 4.30
Теперь используются передовые протоколы аутентификации Kerberos и NTLM, а Docker Desktop может обеспечить более безопасное и бесперебойное взаимодействие с корпоративными прокси-серверами, обеспечивая при этом оптимизацию и отсутствие проблем.
Подробнее об обновлении тут
Теперь используются передовые протоколы аутентификации Kerberos и NTLM, а Docker Desktop может обеспечить более безопасное и бесперебойное взаимодействие с корпоративными прокси-серверами, обеспечивая при этом оптимизацию и отсутствие проблем.
Подробнее об обновлении тут
❤12❤🔥1🥰1🎉1
🛟🛟 Автоматизация сборки образов Docker с помощью Pulumi и Docker Build Cloud
В статье, автор расскажет о новом поставщике Docker Build от Pulumi, и как он работает с Docker Build Cloud, чтобы упростить создание, развертывание и управление контейнеризированными приложениями. Сначала будет создан проект с использованием Docker Build Cloud и Pulumi. Затем предлагается рассмотреть интересные примеры использования, которые продемонстрируют, как можно использовать этого поставщика для упрощения процессов сборки и развертывания.
Читать статью
#туториал
В статье, автор расскажет о новом поставщике Docker Build от Pulumi, и как он работает с Docker Build Cloud, чтобы упростить создание, развертывание и управление контейнеризированными приложениями. Сначала будет создан проект с использованием Docker Build Cloud и Pulumi. Затем предлагается рассмотреть интересные примеры использования, которые продемонстрируют, как можно использовать этого поставщика для упрощения процессов сборки и развертывания.
Читать статью
#туториал
👍3🔥2❤🔥1
🍽️🍽️ Dev контейнеры и с чем их едят
Как вести разработку на используемой платформе (x86) под целевую платформу (ARM).
Какие есть решения:
👉 Самое очевидное — начать устанавливать кросс-компиляторы и другие инструменты для разработки локально. Нужно разрабатывать на C++, так что установим Cygwin, на него устанавливаем все нужные нам библиотеки и компиляторы, устанавливаем MSYS2, настраиваем его так, чтобы он использовал инструменты из Cygwin. А теперь повторяем это на компьютере всех разработчиков в команде! Так дело не пойдет: слишком много действий и велик процент ошибиться и установить что-то не то.
👉 Можно настраивать все это на одном компьютере, к которому через SSH будут подключаться разработчики. Подобная машина называется Build Server. Звучит уже лучше, но требует отдельный сервер и хорошее интернет соединение.
👉 Финальная идея — контейнерная разработка на компьютере каждого разработчика с помощью Docker. Автор пытался реализовать это различными способами, но наиболее оптимальным из них показался dev контейнер: вся команда использовала один и тот же конфигурационный файл для запуска контейнера, и, впоследствии, каждый разработчик имел готовую среду разработки со всеми необходимыми тулчейнами и зависимостями у себя на компьютере.
Речь пойдет о третьем варианте
#туториал
Как вести разработку на используемой платформе (x86) под целевую платформу (ARM).
Какие есть решения:
👉 Самое очевидное — начать устанавливать кросс-компиляторы и другие инструменты для разработки локально. Нужно разрабатывать на C++, так что установим Cygwin, на него устанавливаем все нужные нам библиотеки и компиляторы, устанавливаем MSYS2, настраиваем его так, чтобы он использовал инструменты из Cygwin. А теперь повторяем это на компьютере всех разработчиков в команде! Так дело не пойдет: слишком много действий и велик процент ошибиться и установить что-то не то.
👉 Можно настраивать все это на одном компьютере, к которому через SSH будут подключаться разработчики. Подобная машина называется Build Server. Звучит уже лучше, но требует отдельный сервер и хорошее интернет соединение.
👉 Финальная идея — контейнерная разработка на компьютере каждого разработчика с помощью Docker. Автор пытался реализовать это различными способами, но наиболее оптимальным из них показался dev контейнер: вся команда использовала один и тот же конфигурационный файл для запуска контейнера, и, впоследствии, каждый разработчик имел готовую среду разработки со всеми необходимыми тулчейнами и зависимостями у себя на компьютере.
Речь пойдет о третьем варианте
#туториал
❤🔥2👍2
#вопросы_с_собеседования
Что такое userspace, kernelspace? Чем они отличаются?
Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.
Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.
Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?
Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .
Краткое определение:
👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.
И чтобы работать приложения взаимодествуют через интерфейс, которое называется системным вызовом.
Что такое userspace, kernelspace? Чем они отличаются?
Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.
Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.
Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?
Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .
Краткое определение:
👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.
И чтобы работать приложения взаимодествуют через интерфейс, которое называется системным вызовом.
❤🔥16👍5❤1🥰1