- •Общие сведения об операционных системах.
- •1.2. Становление операционных систем
- •1.2.1. Режим пакетной обработки
- •1.2.2. Режим разделения времени
- •1.2.3. Режим реального времени
- •1.3. Классификация ос
- •1.3.1. Дос (Дисковые Операционные Системы)
- •1.3.3. Системы виртуальных машин
- •1.3.4. Системы реального времени
- •1.3.5. Кросс-загрузчики
- •1.3.6. Системы промежуточных типов
- •Сравнение операционной среды
- •2. Краткий обзор операционных систем.
- •2.2.Архитектура unix.
- •2.3.Архитектура ос unix
- •2.6. Основные утилиты ос unix
- •3.Инструментальные средства программирования
- •3.1. Компилятор
- •3.1.1. Стадии компиляции:
- •Ос рв (Операционные системы реального времени).
- •4.1. Достоинства:
- •4.2. Преимущества:
- •Векторные платы
- •5.2.Ядро ос Helios:
- •7.2.Структура Win 95
- •7.3. Сpавhительhая хаpаkтеpистиkа
- •7.3.1. Тpетье кольцо.
- •7.3.2. Hулевое кольцо.
- •7.6. Системные операции unix
- •7.6.1. Основные особенности:
- •8. Однопользовательские операционные системы.
- •8.1. Среда выполнения.
- •9. Многозадачные и многопользовательские опрерационные системы
- •9.1. Системы коллективного пользования машин.
- •Синхронизация и другие методы взаимодействия задач. 7.3.1. Синхронный ввод/вывод в однозадачных системах
- •7.3.2. Синхронный ввод/вывод в многозадачных системах
- •Архитектура Фон-Неймана
- •Механизмы переключения контекстов.
- •1 Прогр.
- •При этом пользовательские задачи должны иметь возможность обмениваться данными с модулями ос и друг с другом459.4.1. Кольца защиты
- •Функции Setjmp() и Longjmp(). Нелокальные переходы Setjmp.
- •Супервизор.
- •Асинхронные методы замены контекста.
- •Запрет прерывания и маскирование прерывания.
- •Повторная входимость.
- •4.1. Выгоды многозадачности и многопроцессности
- •Состояния процессов.
- •Структурная схема ядра.
- •Стратегия планирования.
- •Обмен сообщениями между процессами.
- •1 Ресурс
- •1 Ресурс
- •2 Проц.
- •2 Ресурс
- •Алгоритм обнаружения и устранения дедлоков (deadlocks).
- •Управление памятью. Общие вопросы.
- •Основные элементы программирования
Основные элементы программирования
Ввод
Типы данных
Операции
Вывод
Условное выполнение
Циклы
Подпрограммы
Вывод
Printf ( );
Примеры:
#include <stdio.h>
main ( )
{
printf ("Hello, world");
}
#include <stdio.h>
main ( )
{
int a;
a = 10;
printf ("%d, a);
}
Типы данных
Int целые
Float с плавающей точкой
Char символьные
Double двойные ( с плавающей точкой)
Указатель
Пример:
#include <stdio.h>
main ( )
{
int a,b;
float ratio;
print ("Введите 2 числа:");
scanf ("%d %d", &a &b);
ratio = a/b;
printf ("Отношение = %f\n", ratio);
}
ratio - переменная
#include <stdio.h>
#include <string.h>
main ( )
{
char msg [30];
strcpy (msg, "Привет, мир");
puts (msg);
}
Операции
* - умножение
/ - деление
% - модуль
+
-
Условные операторы
If - условие
Ветвь 1
Else
Ветвь 2
Пример:
#include <stdio.h>
main ( )
{
int a;
printf ("Введите число:");
scanf ("%d ; &a);
if (a>=1");
printf ("a>=1");
else
printf ("a<1");
}
SWITCH (a)
{
case 1:
funct 1 ( );
break;
case 2:
funct 2 ( );
break;
default:
funct d ( );
break;
}
Операторы цикла
For (i = 0; i < M; i ++)
{
funct (i);
}
while (a < b)
{
funct (a);
a + +;
}
do
{
funct (a);
a + +;
}
while (a<b);
Указатели
Main ( )
{
int ivar, *iptr;
iptr = & ivar;
ivar = 421;
printf ("Адрес ivar = %р\n", & ivar);
printf (" Содержимое ivar = %d\n", ivar);
printf ("Содержимое iptr = %p\n", iptr);
printf ("Указываемое значение = %d\n", *iptr);
}
main ( )
{
int *iptr;
iptr = (int*) malloc (size of (int));
*iptr = 421;
printf ("Содержимое iptr = %p\n", iptr);
printf ("Указываемое значение = %d\n", *iptr);
}
Структура
Struct
{
char name [25];
char class;
float dist;
}
star;
star.class = B;
star.dist = 3E23;
union
{
.
.
.
}
Графика
Detectgraph - Turbo C
Initgraph - Turbo C
Gfx _ init - DJ6PP
Getmax x
Getmax y
MS DOS <= 1M
Графический интерфейс GUI - graphics user interface (UNIX - X Window.МЛС)