Перейти к содержимому
Антон ГончаровРазработчик ИИ-систем

Операционные системы. Основы и принципы

Харви Дейтел, Пол Дейтел, Дэвид Чофнес

  • Программирование
  • Операционные системы

Первый том учебника Дейтелов: аппаратное и программное окружение ОС, процессы и потоки, асинхронное параллельное выполнение, взаимоисключение, взаимоблокировки, планирование процессора, реальная и виртуальная память.

Главные мысли

  1. Процесс — единица, которой ОС выделяет ресурсы; поток — единица, которую она планирует.
  2. Любой общий ресурс требует взаимоисключения: семафоры и мониторы — способы это гарантировать.
  3. Взаимоблокировка возникает только при четырёх условиях сразу, и снятие любого из них её предотвращает.
  4. Алгоритм планирования — всегда компромисс между временем отклика, пропускной способностью и справедливостью.

Где и как применил

  • Демо · Веб-приложение · Laravel · PostgreSQL

    Складской контур на Laravel

    Гонка двух настоящих процессов PHP за один остаток в PostgreSQL — с блокировкой строки и без: видно, зачем общему ресурсу взаимоисключение.

  • Демо · Веб-приложение · PWA · нативный JS

    Офлайн-приложение курьера

    Если курьер без сети и диспетчер изменили один и тот же заказ, конфликт не решается молча «кто последний записал» — курьер выбирает, чья версия верная.

Ещё на полке

  • Читаю

    Прикладные API для искусственного интеллекта и Data Science

    Райан Дэй

    Практическая книга о том, как сделать API для данных и как подключить к нему ИИ. Сквозной проект — сервис на FastAPI с базой и документацией, затем SDK для него, использование API в аналитике и, наконец, агенты на LangChain, которые сами вызывают API.

    ИИ и агентыPythonAPIПрименено в 3 проектах
  • Читаю

    Серверные приложения на Python, Django, Flask и FastAPI

    Р. С. Бухарев

    Путь серверной разработки на Python — от сокетов и протоколов до архитектуры и запуска на сервере. Django, Flask и FastAPI разобраны на реальных проектах: CRM-система, Telegram-бот с серверной логикой, REST API для мобильного приложения и чат на WebSocket. Отдельные главы — про кеширование и масштабирование, Docker и Kubernetes, PostgreSQL, MySQL, SQLite и MongoDB и про безопасность: хеширование паролей, JWT и OAuth 2.0, защита от SQL-инъекций, XSS и CSRF, TLS.

    ПрограммированиеPythonБэкендПрименено в 1 проекте