Systemy wieloprogramowe a współdzielenie czasu
Wieloprogramowanie to przydzielanie więcej niż jednego programu współbieżnego w systemie komputerowym i jego zasobach. Wieloprogramowanie pozwala na efektywne wykorzystanie procesora, umożliwiając różnym użytkownikom efektywne wykorzystanie procesora i urządzeń we / wy. Wieloprogramowanie zapewnia, że procesor zawsze ma coś do wykonania, co zwiększa wykorzystanie procesora. Z drugiej strony, współdzielenie czasu to współdzielenie zasobów obliczeniowych między kilku użytkowników w tym samym czasie. Ponieważ umożliwi to dużej liczbie użytkowników jednoczesną pracę w jednym systemie komputerowym, obniży to koszt zapewnienia możliwości obliczeniowych.
Co to jest system wieloprogramowania?
Wieloprogramowanie to szybkie przełączanie procesora między kilkoma programami. Program zazwyczaj składa się z kilku zadań. Zadanie zwykle kończy się żądaniem przeniesienia danych, co wymagałoby wykonania pewnych operacji we / wy. Wielozadaniowość była często wykonywana w celu utrzymania zajętości procesora, podczas gdy aktualnie uruchomiony program wykonuje operacje we / wy. W porównaniu z innymi instrukcjami wykonującymi operacje we / wy są bardzo wolne. Nawet jeśli program zawiera bardzo małą liczbę operacji we / wy, większość czasu potrzebnego na program jest poświęcana na te operacje we / wy. Dlatego użycie tego czasu bezczynności i zezwolenie innemu programowi na wykorzystanie procesora w tym czasie zwiększy wykorzystanie procesora. Wieloprogramowanie zostało pierwotnie opracowane pod koniec lat pięćdziesiątych XX wieku jako funkcja systemów operacyjnych i po raz pierwszy zostało użyte w komputerach mainframe. Wraz z wprowadzeniem technologii pamięci wirtualnej i maszyn wirtualnych, udoskonalono wykorzystanie wieloprogramowania.
Co to jest system podziału czasu?
Współdzielenie czasu, które zostało wprowadzone w latach 60-tych XX wieku, to współdzielenie zasobów obliczeniowych między kilkoma użytkownikami jednocześnie. W systemach z podziałem czasu kilka terminali jest podłączonych do jednego dedykowanego serwera posiadającego własny procesor. Czynności / polecenia wykonywane przez system operacyjny systemu współdzielenia czasu mają bardzo krótki okres czasu. Dlatego procesor jest przypisany do użytkowników na terminalach na krótki okres czasu, w ten sposób użytkownik w terminalu ma wrażenie, że ma dedykowany procesor za swoim terminalem. Krótki okres, w którym polecenie jest wykonywane w systemie współdzielenia czasu, nazywany jest przedziałem czasu lub kwantem czasu. Wraz z rozwojem Internetu systemy współdzielenia czasu stały się bardziej popularne, ponieważ drogie farmy serwerów mogą obsługiwać bardzo dużą liczbę klientów korzystających z tych samych zasobów. Ponieważ strony internetowe działają głównie w okresach wzmożonej aktywności, po których następują okresy bezczynności, czas bezczynności jednego klienta może być efektywnie wykorzystany przez drugiego, bez zauważania opóźnienia.
Jaka jest różnica między systemem wieloprogramowania a systemem współdzielenia czasu?
Główną różnicą między wieloprogramowaniem a współdzieleniem czasu jest to, że wieloprogramowanie to efektywne wykorzystanie czasu procesora, pozwalając kilku programom na jednoczesne korzystanie z procesora, ale współdzielenie czasu to współdzielenie obiektu obliczeniowego przez kilku użytkowników, którzy chcą korzystać z tego samego narzędzia w tym samym czasie. Każdy użytkownik systemu współdzielenia czasu otrzymuje swój własny terminal i ma wrażenie, że używa samego procesora. W rzeczywistości systemy współdzielenia czasu wykorzystują koncepcję wieloprogramowania do współdzielenia czasu procesora między wielu użytkowników w tym samym czasie.