Перейти к основному содержимому

О разделе

Впервые за ПК — сначала Основы компьютерной грамотности: там же разбираются установка и запуск программ в бытовом смысле.

Раздел объясняет, что такое программа как инструкции для компьютера, как исходный код превращается в работающий процесс, и как программы связаны с операционной системой, настройками и жизненным циклом (установка, обновление).

Программа реализует алгоритм — упорядоченные шаги решения задачи. Сами алгоритмы, синтаксис языков и архитектурные приёмы разбираются в базовой информатике и в томе Код и разработка; здесь фокус на исполнении, типах ПО и взаимодействии с системой.

Как формулируют "программу"

В стандартах и учебниках встречаются два близких смысла — их полезно различать с первого дня:

СмыслСутьПример в жизни
Исполняемая программаКомбинация инструкций и данных, которую аппаратура может выполнять (ISO/IEC/IEEE 24765)Файл .exe, модуль в ОЗУ, прошивка
Исходный текстСинтаксическая единица языка программирования — определения и операторы для заданной задачи (ISO/IEC 2382-1)main.py, проект в IDE

В российском праве программа для ЭВМ — совокупность данных и команд в объективной форме для получения определённого результата на компьютере, включая подготовительные материалы разработки (ст. 1261 ГК РФ). Это юридическое определение; в быту "программа" чаще означает и приложение для пользователя, и файл на диске.

Образ программы обычно хранится в исполняемом файле на диске. По запросу пользователя операционная система загружает его в оперативную память; центральный процессор выполняет инструкции до конца, ошибки или явного завершения. Работающая копия называется процессом; внутри неё — потоки как наименьшие единицы выполнения. Схема "диск → процесс → потоки" — в вводной статье. При многозадачности ОС переключает процессы и потоки так быстро, что создаётся эффект одновременной работы нескольких программ; на многоядерных машинах они могут идти параллельно на разных ядрах (параллельные вычисления).

Прикладное ПО решает задачи пользователя (документы, расчёты, игры). Системное ПО управляет ресурсами машины и создаёт среду для прикладных программ; главная часть — операционная система.


Рекомендуемый порядок

  1. Основы компьютерной грамотности — если ещё не уверенно пользуетесь ПК, файлами и установкой софта. 0b. Базовая информатика — программирование — цикл написания программы, система программирования, транслятор (этап 28).
  2. Запуск и перезапуск приложений — exe, IDE, терминал, dev-сервер, службы, Docker (практика для новичка).
  3. Что такое программа? — базовые термины, компиляция и интерпретация, процесс.
  4. ПО и операционная система — системное, прикладное, инструментальное ПО.
  5. Классификация программ — утилиты, модули, службы, исполняемые файлы.
  6. Поведение программ — конфигурация, зависимости, процессы и потоки.
  7. Установка и обновление — версии, патчи, инсталляция и удаление.
  8. Взаимодействие с ОС — системные вызовы, память, драйверы.

Углубление (не обязательно с первого прохода): Компиляторы и интерпретаторы — трансляторы, полный конвейер компиляции, байт-код, JIT.

Мобильные приложения — обзор в статье 3; подробная разработка — в разделе Мобильные приложения.


В подборках

Статья входит в тематические подборки и блок "С чего начать?" на главной. Соседние шаги того же маршрута:

Первый коммитКак работает компьютер — о разделе, Терминал — о разделе, Код — о разделе, Основы работы с Git — о разделе, Python — о разделе, Разработка и отладка — о разделе.

Компьютерная грамотностьОсновы компьютерной грамотности, Как работает компьютер — о разделе, Исполняемые файлы и архивы — о разделе, Операционная система — о разделе, Советы для новичка — о разделе, Софт рядового пользователя — о разделе, Системное администрирование — о разделе.

База программистаТекст — о разделе, Исполняемые файлы и архивы — о разделе, Базовые операции с данными — о разделе, Терминал — о разделе, Данные и информация — о разделе, Основы информационной безопасности — о разделе.