Форум программистов, компьютерный форум CyberForum.ru

Объяснить программу (Алгоритм планирования, Планировщик) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
kirya
-9 / 2 / 0
Регистрация: 01.06.2012
Сообщений: 87
21.11.2012, 14:01     Объяснить программу (Алгоритм планирования, Планировщик) #1
Друзья, кто нибудь помогите объяснить как работает программа, по какому алгоритму планирования работает Планировщик, что конкретно делается.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include "stdafx.h"
#include "conio.h"
#include "iostream"
#include "stdlib.h"
#include "locale.h"
using namespace std;
 
void main()
{
    int n,i,j,sum=0;
    int serv[10],start[10],wait[10], obr[10];
    double avewait=0.0,aveobr=0.0;
    setlocale(LC_ALL, "rus");
    printf("Введите кол-во процессов: ");
    scanf("%d", &n);
 
    for (i=0;i<n;i++)
    {   
        printf("Введите начало запуска и время обслуживания: ");
        scanf("%d %d", &start[i], &serv[i]);
    }
    system("CLS");
 
    for (i=0;i<n;i++)
    {
        sum=0;
        for (j=0;j<i;j++)
            sum=sum+serv[j]-2;
            wait[i]=sum;
    }
 
    for (i=0;i<n;i++)
    {
        obr[i]=wait[i]+serv[i];
    }
    for (i=0;i<n;i++)
    {
        avewait+=wait[i];
        aveobr+=obr[i];
    }
    
    avewait/=n;
    aveobr/=n;
 
    printf("\n");
    printf("Процесс       Начало       Обслуживание       Ожидание       Оборот "); 
    printf("\n\n");
 
    for (i=0;i<n;i++)
    {
        cout<<i+1<<"\t\t"<<start[i]<<"\t\t"<<serv[i]<<"\t\t"<<wait[i]<<"\t\t"<<obr[i];
        printf("\n");
    }
    printf("=====================================================================\n\n");
    printf("Среднее время ожидания = %.2f", avewait);
    printf("\n");
    printf("Среднее оборотное время = %.2f", aveobr);
    _getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2012, 14:01     Объяснить программу (Алгоритм планирования, Планировщик)
Посмотрите здесь:

C++ Объяснить программу
Алгоритм планирования процессов First-Come, First-Served (FCFS) C++
Объяснить программу C++
Алгоритм планирования Round Robin с квантом времени (переделать программу) C++
Объяснить алгоритм просто перебора C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
XRuZzz
Антикодер
577 / 478 / 23
Регистрация: 15.09.2012
Сообщений: 2,429
28.11.2012, 09:17     Объяснить программу (Алгоритм планирования, Планировщик) #2
C++
1
2
3
int n;
...
scanf("%d", &n);
так например вводиться количество процессов в переменную n
WhiteP
605 / 203 / 23
Регистрация: 20.11.2012
Сообщений: 419
28.11.2012, 09:29     Объяснить программу (Алгоритм планирования, Планировщик) #3
C
1
2
3
4
5
6
7
    for (i=0;i<n;i++)
    {
        sum=0;
        for (j=0;j<i;j++)
            sum=sum+serv[j]-2;
            wait[i]=sum;
    }
Для каждого процесса i суммируется (время обслуживания -2) всех предыдущих процессов. Итог равен времени ожидания для процесса i.

C
1
2
3
4
    for (i=0;i<n;i++)
    {
        obr[i]=wait[i]+serv[i];
    }
Итоговое время обработки процесса i равно времени ожидания, вычисленного на предыдущем шаге + время обслуживания, введенное пользователем для текущего процесса.

C
1
2
3
4
5
6
7
8
    for (i=0;i<n;i++)
    {
        avewait+=wait[i];
        aveobr+=obr[i];
    }
    
    avewait/=n;
    aveobr/=n;
Высчитывается среднее время ожидания для всех процессов.
kirya
-9 / 2 / 0
Регистрация: 01.06.2012
Сообщений: 87
30.11.2012, 04:43  [ТС]     Объяснить программу (Алгоритм планирования, Планировщик) #4
Какой алгоритм планирования здесь реализован: FIFO, SJF ????
Нужно чтобы в конце считало: СРЕДНЕЕ ВРЕМЯ ВЫПОЛНЕНИЯ, а СРЕДНЕЕ ОБОРОТНОЕ ВРЕМЯ НЕ НУЖНО
Что означает в программе ОБОРОТ ??
Yandex
Объявления
30.11.2012, 04:43     Объяснить программу (Алгоритм планирования, Планировщик)
Ответ Создать тему
Опции темы

Текущее время: 14:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru