Co to jest kontrola zadań?
Kontrola zadań to termin zarządzania różnymi działaniami w systemie komputerowym. Komputery mogą wykonywać wiele rzeczy jednocześnie, ale w wielu przypadkach tylko jeden proces może działać w danym obszarze w tym samym czasie. Komputery używają systemu kontroli zadań do zarządzania swoimi zadaniami, umożliwiając jednemu procesowi korzystanie z zasobów w jednym obszarze, podczas gdy inny używa zasobów w innym obszarze. Systemy te monitorują priorytet operacji i utrzymują, że ważne zadania działają szybciej, a mniej ważne zadania w tle.
Systemy kontroli pracy opracowane na wczesnym etapie projektowania nowoczesnych komputerów w celu zmniejszenia problemów z prędkością. W wielu wczesnych systemach centralne systemy komputera były więcej niż w stanie przyspieszyć wykonywanie powierzonych im zadań. Problemy z prędkością występowały w komunikacji z systemami peryferyjnymi. Nie tylko systemy działały wolniej, ale czas przenoszenia między grupami systemów był dość długi. Dodatki do urządzeń peryferyjnych, takich jak bufory i systemy pamięci podręcznej, przyspieszyły tylko niektóre procesy i nie rozwiązały problemu.
Wielozadaniowość była wczesną próbą kontroli pracy. Komputer otrzymał nowy system, który śledził aktywne i nieaktywne zadania. Gdy system był zbyt zajęty, aby obsłużyć nowe zadanie, został umieszczony w nieaktywnej kolejce. Gdy sprzęt był w stanie podjąć nowy proces, proces o najwyższym priorytecie byłby aktywny. Proces ten przejdzie następnie do sprzętu.
Problem z tym systemem miał charakter zdecentralizowany. Podczas gdy jedna kolejka zawierała wszystkie aktywne i nieaktywne procesy, informacje dotyczące sprzętu pochodziły z samego sprzętu. Sterownik sprzętu poinformuje program planujący, czy był dostępny, czy nie - jeśli proces przejdzie w stan błędu i będzie nadal korzystać ze sprzętu, nigdy nie będzie dostępny. Ponadto niektóre procesy wymagały jedynie centralnego procesora lub określonego urządzenia peryferyjnego; wiązałoby to cały system do czasu zakończenia tych procesów. W celu rozwiązania tego problemu zaprojektowano nowoczesne systemy kontroli pracy.
Kontrola zadań koncentruje się na idei przetwarzania wyprzedzającego. Każdy proces ma ogólny priorytet, a czasami drugorzędne priorytety dotyczące niektórych systemów. Program komputerowy utrzymuje kolejkę procesów. Kiedy pojawi się jeden proces, który jest ważniejszy niż ten, który jest obecnie aktywny, aktywny zawiesi się i nowy proces przejmie kontrolę. Gdy zawieszony program jest najważniejszym procesem, uruchomi się ponownie.