Термин «процесс» впервые появился при разработке операционной системы Multix и имеет несколько определений, которые используются в зависимости от контекста, согласно которым процесс — это:
-программа на стадии выполнения -«объект», которому выделено процессорное время -асинхронная работа
Для описания состояний процессов используется несколько моделей. Самая простая — модель трех состояний.Она определяет следующие состояния процесса: -состояния выполнения -состояния ожидания -состояния готовности
Выполнение — это активное состояние, во время которого процесс обладает всеми необходимыми ему ресурсами. В этом состоянии процесс непосредственно выполняется процессором.
Ожидание — это пассивное состояние, во время которого процесс заблокирован и не может быть выполнен, потому что ожидает какое-то событие, например, ввода данных или освобождения нужного ему устройства.
Готовность — это тоже пассивное состояние, процесс тоже заблокирован, но в отличие от состояния ожидания, он заблокирован не по внутренним причинам (ведь ожидание ввода данных — это внутренняя, «личная» проблема процесса — он может ведь и не ожидать ввода данных и свободно выполняться — никто ему не мешает), а по внешним, независящим от процесса, причинам.
Int main() { int numOfEl, // number of elements in the array minNum = 28, // minimal number in the array *mainArray, // main array cntArray[15]; // array for counting the repeated numbers
std::cout << "Input the number of the elements: "; std::cin >> numOfEl;
mainArray = new int[numOfEl];
for (int i = 0; i < 15; i++) cntArray[i] = 0;
for (int i = 0; i < numOfEl; i++) { cntArray[(mainArray[i] = rand() % 15 + 13) - 13]++;
Термин «процесс» впервые появился при разработке операционной системы Multix и имеет несколько определений, которые используются в зависимости от контекста, согласно которым процесс — это:
-программа на стадии выполнения-«объект», которому выделено процессорное время
-асинхронная работа
Для описания состояний процессов используется несколько моделей. Самая простая — модель трех состояний.Она определяет следующие состояния процесса:
-состояния выполнения
-состояния ожидания
-состояния готовности
Выполнение — это активное состояние, во время которого процесс обладает всеми необходимыми ему ресурсами. В этом состоянии процесс непосредственно выполняется процессором.
Ожидание — это пассивное состояние, во время которого процесс заблокирован и не может быть выполнен, потому что ожидает какое-то событие, например, ввода данных или освобождения нужного ему устройства.
Готовность — это тоже пассивное состояние, процесс тоже заблокирован, но в отличие от состояния ожидания, он заблокирован не по внутренним причинам (ведь ожидание ввода данных — это внутренняя, «личная» проблема процесса — он может ведь и не ожидать ввода данных и свободно выполняться — никто ему не мешает), а по внешним, независящим от процесса, причинам.
{
int
numOfEl, // number of elements in the array
minNum = 28, // minimal number in the array
*mainArray, // main array
cntArray[15]; // array for counting the repeated numbers
std::cout << "Input the number of the elements: ";
std::cin >> numOfEl;
mainArray = new int[numOfEl];
for (int i = 0; i < 15; i++)
cntArray[i] = 0;
for (int i = 0; i < numOfEl; i++)
{
cntArray[(mainArray[i] = rand() % 15 + 13) - 13]++;
if (mainArray[i] < minNum && mainArray[i] % 2 != 0)
minNum = mainArray[i];
}
#ifdef _DEBUG
std::cout << "Array: ";
for (int i = 0; i < numOfEl; i++)
std::cout << mainArray[i] << ";" << std::endl;
#endif
std::cout << "Repeated numbers: ";
for (int i = 0; i < numOfEl; i++)
if (cntArray[i] >= 2)
std::cout << i + 13 << "; ";
std::cout << std::endl << "Minimal number: " << minNum << std::endl;
system("pause");
return 0;
} /* End of the 'main' function */