- •Материалы к вводной лекции
- •1)В чём отличие операционной системы и системного программного обеспечения?
- •2)Зачем нужны такие стандарты как posix?
- •Материалы к лекции № 2. Основы работы в Linux. Часть 1
- •Материалы к лекции № 3. Основы работы в Linux. Часть 2
- •Материалы к лекции № 4. Компиляторы и средства разработки gcc
- •16) Какие стандартные типы оптимизаций применяются в большинстве компиляторов?
- •Материалы к лекции № 6. Ядерная физика для программистов, или Ядро Linux. (Сжато)
- •29) Зачем нужны модули ядра Linux?
- •30) В чём отличия модуля от программы?
- •49) Чем компиляция модулей отличается от компиляции программ?
- •63) Больший номер – позже запущен – почему это важно
- •68) Что дает системе cow?
- •Запуск процессов с помощью вызова exec()
- •72) Какие области памяти остаются после завершённого процесса?
Материалы к вводной лекции
1)В чём отличие операционной системы и системного программного обеспечения?
Системное ПО - комплекс программ, которые обеспечивают управление компонентами компьютерной системы, такими как процессор, оперативная память, устройства ввода-вывода, сетевое оборудование, выступая как «межслойный интерфейс», с одной стороны которого аппаратура, а с другой — приложения пользователя, т.е. управление железом.
ОС — пример СПО, среда для запуска программ, комплекс управляющих и обрабатывающих программ, также им являются встроенные (firmware) программы, например BIOS, сервисные программы и системы программирования. ОС-комплекс системных программ, расширяющих возможности вычислений машины, а также обеспечивающий управление её ресурсами. ОС-основная часть СПО.
*Систе́мное програ́ммное обеспе́чение — комплекс программ, которые обеспечивают управление компонентами компьютерной системы, такими как процессор,оперативная память, устройства ввода-вывода, сетевое оборудование, выступая как «межслойный интерфейс», с одной стороны которого аппаратура, а с другой — приложения пользователя.
*Операционная система — комплекс системных программ, расширяющий возможности вычислительной системы, а также обеспечивающий управление её ресурсами, загрузку и выполнение прикладных программ, взаимодействие с пользователями. В большинстве вычислительных систем операционные системы являются основной, наиболее важной (а иногда единственной) частью системного программного обеспечения.
2)Зачем нужны такие стандарты как posix?
Portable Operating System Interface for Unix – набор стандартов, описывающих интерфейсы между ОС и прикладным ПО. Создан для обеспечения переносимости прикладного ПО на уровне исходного кода посредством использования в них для взаимодействия с операционной системой одного стандартизованного переносимого интерфейса. В стандарте описывается, как должна вести себя система в той или иной ситуации, но не приводится никаких указаний, как это следует реализовать программными средствами. Создан для обеспечения переносимости прикладного ПО на уровне исходного кода по средством использования в них для взаимодействия с операционной системой одного стандартизованного переносимого интерфейса (для совместимости unix подобных ОС).
3)Как соотносятся понятия Linux, GNU/Linux и POSIX?
Linux - ядро ОС GNU/Linux, которая по большей части совместима со стандартами POSIX
*GNU/Linux — свободная UNIX-подобная операционная система. Основана на системных программах, разработанных в рамках проекта GNU, и на ядре Linux. Обычно по историческим причинами для краткости эта система называется просто «Linux».
*Linux в строгом понимании – ядро операционной системы.
4) В чём состоит назначение бесплатных дистрибутивов GNU/Linux при наличии платных аналогов: Fedora — Red Hat Enterprise Linux, openSUSE — SUSE Enterprise Linux и т. д.?
Платные дистрибутивы нацелены на использование преимущественно компаниями: они могут содержать некоторые платные компоненты, а также в них осуществлена поддержка. При использовании бесплатных дистрибутивов, пользователь, при возникновении какой-либо неисправности должен устранять ее сам. В основном компании выпускают и платные и бесплатные дистрибутивы для того, чтобы первые использовались в компаниях, а вторые бы проверялись пользователями на наличие каких-либо багов, для того, чтобы устранять их в платных версиях.
*Для чего нужны дистрибутивы:
Как открытая система для бытовых, мобильных и настольных компьютеров (Ubuntu, Android, Maemo, Meego, Tizen и т. д.)
Образование, наука, промышленность (Enterprise Linux, Debian)
5) Почему GNU/Linux не используют «все подряд»?
Не все пользователи имеют желание разбираться, от какого железа им над отказаться, чтобы работать в GNU/Linux, какой дистрибутив лучше выбрать, читать документацию и разбираться с проблемами, возникающими ниоткуда. Им, скорее, хочется просто сесть и работать.
Под GNU/Linux нет достаточного количества команд или есть аналоги, уступающие, например, Windows.
В GNU/Linux требуются навыки работы в консоли
Разработчики GNU/Linux часто допускают ошибки в приложениях, что вызывает недовольство пользователя
