Тестирование программы Simple Navigator


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

ФУНКЦИЯ. ПЕРЕДАЧА ПАРАМЕТРОВ И ВОЗВРАТ ЗНАЧЕНИЙ ИЗ ФУНКЦИИ. РЕКУРСИВНЫЕ ФУНКЦИИ.


ЛАБОРАТОРНАЯ РАБОТА №1 ЦЕЛЬ РАБОТЫ: Изучить работу пользовательских функций в программах на языке Си. Научиться разрабатывать свои функции, позволяющие повысить структурированность программы. Изучить правила оформления функции в программе, передачу параметров в функцию и возврат результатов работы функции.

Новые средства языка С++


Ссылка — это псевдоним для другой переменной. Они объявляются при помощи символа &. Ссылки должны быть проинициализированы при объявлении, причем только один раз.

Понятие класса.


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

Лабораторная работа 2


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

Лабораторная работа 2


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

УКАЗАТЕЛИ. РАБОТА СО СТРОКАМИ


ЛАБОРАТОРНАЯ РАБОТА№ 2-3 ЦЕЛЬ РАБОТЫ: Изучить работу со строками в программах на языке Си. Научиться создавать свои функции преобразования строк и использовать готовые библиотечные функции. Изучить правила передачи указателя в функцию и возврата указателя из функции на примере символьных массивов.

Простое и множественное наследование. Виртуальные функции.


3.1. Простое наследование. Простое наследование описывает родство между двумя классами: один из которых наследует второму. Класс, нахо- дящийся на вершине иерархии, называется базовым классом. Прочие классы называются производными классами. Из одного класса могут выводится многие классы, но даже в этом случае подобный вид взаимосвязи остается простым наследованием. Базовый класс часто называют предком, а производный класс Читать далее

Лабораторная работа 3


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

СТРУКТУРЫ. ДИНАМИЧЕСКИЕ МАССИВЫ И ПЕРЕМЕННЫЕ


ЛАБОРАТОРНАЯ РАБОТА№ 5   ЦЕЛЬ РАБОТЫ: Изучить правила создания произвольного типа данных с помощью структуры и правила работы с этим типом. Освоить создание и работу с динамическими массивами и переменными.

Дружественные функции. Перегрузка операторов.


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

РАБОТА С ФАЙЛАМИ.


ЛАБОРАТОРНАЯ РАБОТА№ 6   ЦЕЛЬ РАБОТЫ: Изучить возможность сохранения результатов работы программ в файлах на дисках и считывания информации из файла.

Тема 6: Шаблоны. Списки.


6.1. Шаблоны. Подобно тому как класс представляет собой схематичес-кое описание объекта, так и шаблон представляет собой схе-матическое описание построения функций и классов. Шаблоны особенно полезны в библиотеках классов, которыми пользу-ются программисты. Иногда их называют параметризованными типами, так как они указывают лишь спецификации для фун-кций и классов, но не детали настоящей реализации.

Лабораторная работа 6


Цель работы: Ознакомиться с созданием шаблонов функций и классов. Освоить написание контейнерных классов и их приме-нение для построения различных связных списков. 1? Порядок выполнения работы.

Лабораторная работа 5


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

Файловые потоки ввода-вывода.


Тема 5: Файловые потоки ввода-вывода. 5.1. Использование потоков ввода-вывода. С помощью перегрузки операторов ввода и вывода можно заставить компилятор распознавать в операторах ввода-вы-вода один или несколько необходимых классов. Рассмотрим как создаются потоковые классы.

Управление локальными ресурсами


Важнейшей функцией операционной системы является организация рационального использования всех аппаратных и программных ресурсов системы. К основным ресурсам могут быть отнесены: процессоры, память, внешние устройства, данные и программы.

Управление процессами


Важнейшей частью операционной системы, непосредственно влияющей на функционирование вычислительной машины, является подсистема управления процессами.

Состояние процессов


В многозадачной (многопроцессной) системе процесс может находиться в одном из трех основных состояний: ВЫПОЛНЕНИЕ — активное состояние процесса, во время которого процесс обладает всеми необходимыми ресурсами и непосредственно выполняется процессором; 

Контекст и дескриптор процесса


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

Алгоритмы планирования процессов


Планирование процессов включает в себя решение следующих задач: 1. определение момента времени для смены выполняемого процесса; 2. выбор процесса на выполнение из очереди готовых процессов; 

Критическая секция


Важным понятием синхронизации процессов является понятие «критическая секция» программы. Критическая секция — это часть программы, в которой осуществляется доступ к разделяемым данным.

Тупики


Приведенный выше пример поможет нам проиллюстрировать еще одну проблему синхронизации — взаимные блокировки, называемые также дедлоками (deadlocks), клинчами (clinch) или тупиками. Если переставить местами операции P(e) и P(b) в программе «писателе», то при некотором стечении обстоятельств эти два процесса могут взаимно заблокировать друг друга.

Многозадачность ОС. Нити.


Многозадачность является важнейшим свойством ОС. Для поддержки этого свойства ОС определяет и оформляет для себя те внутренние единицы работы, между которыми и будет разделяться процессор и другие ресурсы компьютера.

Типы адресов


Для идентификации переменных и команд используются символьные имена (метки), виртуальные адреса и физические адреса (рисунок 2.7). 

Распределение памяти фиксированными разделами


Самым простым способом управления оперативной памятью является разделение ее на несколько разделов фиксированной величины. Это может быть выполнено вручную оператором во время старта системы или во время ее генерации.

Перемещаемые разделы


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