Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6 семестр / course / Пояснительная записка.docx
Скачиваний:
2
Добавлен:
18.02.2023
Размер:
154.98 Кб
Скачать

Содержание

ВВЕДЕНИЕ 4

1 АНАЛИЗ ИСХОДНЫХ ДАННЫХ 5

2 ПРОГРАММНОЕ ПРОЕКТИРОВАНИЕ 7

3 ПРОГРАММНАЯ РЕАЛИЗАЦИЯ 11

3.1 Детальная реализация функциональных частей ПО 11

Для этих параметров создадим глобальные переменные с аналогичными названиями. Также предусмотрим возможность не указывать частоту дискретизации, в таком случае будет задано значение по умолчанию для данного устройства. 11

Данные будут сохраняться в очередь записи. Здесь необходимо предусмотреть задание времени записи, ограничение максимального времени записи и подсчет количества данных в очереди. Создадим для них глобальные переменные: timeout, max_timeout, qsize. Для запуска записи измерим уровень громкости и сравним с порогом акустопуска. Для порога акустопуска создадим глобальную переменную trigger. 11

Проверяем время записи и наличие данных в очереди. Извлекаем данные из очереди и записываем в файл. Уменьшаем счетчик размера очереди. Процесс повторяется вновь при помощи цикла while. 12

3.2 Сопроводительная документация ПО 14

3.3 Анализ ПО 14

3.4 Тестирование ПО 15

ЗАКЛЮЧЕНИЕ 18

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 19

Приложения 20

Введение

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

Чтобы добиться кроссплатформенности необходимо использовать кроссплатформенные языки программирования или имеющие кроссплатформенность среды исполнения.

Кроссплатформенными можно назвать большинство современных высокоуровневых языков программирования. Например, C, С++, Free Pascal, FreeBASIC, PureBasic — кроссплатформенные языки на уровне компиляции, то есть для этих языков есть компиляторы под различные платформы. Это позволяет — при надлежащем качестве кода — не переписывать основной движок программы, меняются только особые системозависимые части.

Не менее важны для кроссплатформенности стандартизованные библиотеки среды выполнения. В частности, стандартом стала библиотека языка Си (см. POSIX). Из крупных кроссплатформенных библиотек — Qt, GTK+, FLTK, STL, Boost, OpenGL, SDL, OpenAL, OpenCL.

Но существуют ещё и кроссплатформенные интерпретируемые языки, интерпретаторы которых исполняют требуемые команды без переписывания кода, и всё зависит исключительно от версии самого интерпретатора. К таким относятся PHP, Perl, Python, Tcl и Ruby. Также хочется отметить, что среды исполнения ActionScript Virtual Machine, Java Virtual Machine и .NET также кроссплатформенны, однако на их вход подаётся не исходный текст, а промежуточный код. Поэтому программы, написанные на ActionScript, Java и C#, можно запускать под разными ОС без предварительной перекомпиляции.

Целью курсового проектирования по дисциплине «Операционные системы и системное программирование» является приобретение навыков в реализации цикла разработки программного средства, начиная от технического задания на проект, анализа предметной области и заканчивая оформлением пояснительной записки.

Данная работа посвящена разработке программы для прослушки компьютеров под управлением Windows и Linux.

Соседние файлы в папке course