USS Windows, czyli komputer pokładowy, który wie lepiej
Gdzieś w przestrzeni międzygwiezdnej płynie krążownik USS Windows. Ma mostek, maszynownię, magazyny, dziesiątki stanowisk i kapitana, który uważa, że jeśli przycisk jest niebieski, to na pewno trzeba go nacisnąć. Okręt jest potężny. Załoga doświadczona. Instrukcji obsługi jest więcej niż gwiazd widocznych przez iluminator. A jednak bez jednego elementu ta cała technologia byłaby jedynie bardzo drogą kupą metalu. Tym elementem jest system operacyjny. Dzisiaj dowiemy się, co to właściwie jest, i poznamy pierwszy okręt naszej kosmicznej floty. 🤣
Rozdział pierwszy: komputer, który ma wszystko, oprócz kogoś do zarządzania
— Komputer! Pełna moc silników! Kurs na Alfa Centauri!
— Nie można wykonać polecenia, kapitanie.
— DLACZEGO?!
— Ponieważ ktoś odłączył centralny system sterowania.
— To proszę poprosić mechanika, żeby uruchomił silniki ręcznie!
— Mechanik pyta, którym z czterdziestu tysięcy przełączników ma zacząć.
— TYM OD SILNIKÓW!
— To zawęża wybór do tysiąca siedmiuset.
Wyobraź sobie komputer: procesor potrafi wykonywać instrukcje, pamięć RAM przechowuje dane potrzebne w danej chwili, dysk zapisuje informacje, karta graficzna przygotowuje obraz, a klawiatura i mysz pozwalają człowiekowi wydawać polecenia. Sam sprzęt nie tworzy jednak wygodnego środowiska do pracy. Ktoś musi organizować wykorzystanie tych podzespołów, uruchamiać programy, przydzielać zasoby i rozstrzygać, który program może zrobić co.
Tym zarządcą jest system operacyjny, w skrócie OS od angielskiego operating system. To nie pojedyncze okienko ani jedna aplikacja. To zestaw współpracujących elementów oprogramowania, które pośredniczą między sprzętem a programami oraz zapewniają użytkownikowi sposoby korzystania z komputera.
— Czyli to pan, komputerze, steruje całym okrętem?
— Organizuję dostęp do jego systemów, kapitanie.
— A ja czym steruję?
— Głównie poziomem stresu załogi.
Rozdział drugi: mostek to nie cały statek
Kapitan siedzi przed ogromnymi ekranami. Widzi mapy gwiazd, wskaźniki paliwa, przyciski i komunikaty. Uznał więc, że właśnie to jest cały system operacyjny.
— Komputer, skoro widzę ekran, to znaczy, że widzę system?
— Widzi pan interfejs użytkownika, kapitanie.
— A reszta?
— Pracuje pod spodem.
— A jak wyłączę ekrany?
— Nie zniknie maszynownia. Chociaż pańskie możliwości dowodzenia znacznie się pogorszą.
Interfejs graficzny, czyli GUI, pozwala obsługiwać system przez okna, ikony, menu i wskaźnik myszy. Można też korzystać z interfejsu tekstowego, czyli wiersza poleceń i powłoki. To różne sposoby wydawania poleceń, a nie dwa różne rodzaje komputera.
Najważniejsza część systemu nazywa się jądrem (kernel). Jądro zarządza podstawowymi zasobami i udostępnia programom kontrolowane mechanizmy dostępu do sprzętu. Oprócz niego system ma usługi, biblioteki, narzędzia i interfejsy. Nie każdy element, który widzi użytkownik, pracuje w jądrze — i bardzo dobrze.
— Kapitanie, proszę nie przesuwać suwaka „Jądro” na sto procent.
— A dlaczego?
— Bo to nie jest regulator mocy.
— To po co ma taką poważną nazwę?!
Jądro i procesy mają w naszym cyklu osobne odcinki. Na razie wystarczy pamiętać: mostek to sposób rozmowy ze statkiem, ale prawdziwe zarządzanie odbywa się również głęboko pod pokładem.
Rozdział trzeci: wszyscy chcą pracować jednocześnie
Na USS Windows nawigator wyznacza trasę, mechanik analizuje temperaturę reaktora, lekarz przegląda wyniki badań, kucharz ogląda przepis, a kapitan postanowił dodatkowo uruchomić grę w pasjansa.
— Komputer, dlaczego moja gra się przycina?
— Ponieważ zażądał pan uruchomienia trzystu siedemnastu zadań jednocześnie.
— To proszę dać pasjansowi pierwszeństwo!
— W tej chwili pierwszeństwo ma system podtrzymywania życia.
— NAPRAWDĘ MUSI PAN WSZYSTKO TRAKTOWAĆ TAK POWAŻNIE?!
— W kwestii tlenu: tak.
Uruchomiony program działa jako jeden lub więcej procesów. Procesy korzystają z czasu procesora, pamięci i innych zasobów. System operacyjny planuje ich wykonywanie i pilnuje, aby nie przeszkadzały sobie bardziej, niż to konieczne. Przy wielu rdzeniach pewne zadania faktycznie wykonują się równolegle; na jednym rdzeniu system szybko przełącza wykonywane zadania, dając wrażenie jednoczesności.
RAM jest przestrzenią roboczą dla aktywnych programów, nie magazynem wieczystym. Gdy zasobów brakuje, system może korzystać z pamięci wirtualnej i przenosić część danych na dysk, ale zwykle jest to wolniejsze od pracy w RAM. Zbyt wiele ciężkich programów potrafi więc spowolnić nawet imponujący okręt.
— Kapitanie, zamknąłem czterdzieści niepotrzebnych aplikacji.
— A mój pasjans?
— Uznałem, że to pańska ostatnia linia obrony psychicznej. Zostawiłem.
Rozdział czwarty: pliki, magazyny i rejestr, którego nikt nie może zgubić
W ładowni USS Windows stoi milion skrzyń. W jednej są mapy, w innej filmy szkoleniowe, w kolejnej raporty, a w czterystu siedemnastu — kolejne wersje prezentacji kapitana zatytułowanej „OSTATECZNA_WERSJA_NAPRAWDĘ”.
— Magazynierze! Gdzie są moje dokumenty?
— W katalogu „Dokumenty”, kapitanie.
— A zdjęcia?
— W „Obrazach”.
— A dokument, który zapisałem na pulpicie?
— Na pulpicie.
— No to po co nam pan w ogóle potrzebny?!
— Żeby mógł pan je znaleźć także jutro.
System plików organizuje dane na nośnikach jako pliki i katalogi, utrzymuje informacje o ich położeniu oraz — zależnie od systemu plików i konfiguracji — o uprawnieniach i innych właściwościach. Windows często korzysta z NTFS, ale zna też inne systemy plików. Dysk jest nośnikiem, a system plików sposobem uporządkowania zapisanych danych; to nie to samo.
W Windows użytkownik zwykle widzi dyski i woluminy przez litery, na przykład C:, a ścieżka do pliku może wyglądać jak C:\Users\Kapitan\Documents\raport.txt. To nie jest uniwersalny zwyczaj wszystkich systemów operacyjnych. Na innych okrętach mapa magazynów może wyglądać zupełnie inaczej.
I ważne: system operacyjny potrafi zapisać plik, ale nie zastępuje kopii zapasowej. Gdy ktoś skasuje dokument, dysk się zepsuje albo oprogramowanie zaszyfruje dane, potrzebne mogą być odpowiednie zabezpieczenia i backupy.
— Kapitanie, czy wykonał pan kopię planu misji?
— Oczywiście. Nazwałem ją „plan_misji_kopia” i położyłem obok oryginału.
— Na tym samym dysku?
— A GDZIE MIAŁEM POŁOŻYĆ?! NA KSIĘŻYCU?!
— Księżyc byłby przynajmniej inną lokalizacją.
Rozdział piąty: sterownik do kubka z kawą
Na mostku kapitan stawia kubek na panelu dotykowym. Komputer wydaje dźwięk nowego urządzenia.
— Wykryto nowe urządzenie.
— Jakie urządzenie?!
— Kubek z kawą.
— TO NIE JEST URZĄDZENIE!
— Rozpoczęto wyszukiwanie sterownika.
— NIE POTRZEBUJĘ STEROWNIKA DO KUBKA!
— Nie znaleziono odpowiedniego sterownika. Urządzenie może nie działać poprawnie.
— Mechaniku!
— Kapitanie, mówiłem, żeby nie stawiać kawy na czujnikach.
Żart żartem, ale sterowniki urządzeń są naprawdę ważne. Pozwalają systemowi komunikować się z konkretnym sprzętem: drukarką, kartą graficzną, kontrolerem dysku, interfejsem sieciowym i wieloma innymi urządzeniami. System i programy nie muszą samodzielnie znać wszystkich szczegółów każdego modelu sprzętu.
To jedna z przyczyn popularności Windows: obsługuje bardzo szeroki ekosystem komputerów, urządzeń i aplikacji. Nie znaczy to jednak, że każde urządzenie zawsze zadziała. Czasami sterownik jest nieobecny, niezgodny, wadliwy albo po prostu nie istnieje dla danego wydania systemu.
— Kapitanie, drukarka nie odpowiada.
— Przecież jest podłączona!
— Tak. Mechanicznie.
— To proszę z nią porozmawiać!
— Właśnie próbuję. Nie znamy wspólnego języka.
Rozdział szósty: dlaczego akurat USS Windows?
Na kosmicznych szlakach można spotkać wiele różnych okrętów. Są jednostki z rodziny Linux, eleganckie konstrukcje z macOS i ogromna liczba mniejszych urządzeń z Androidem lub iOS. Każda rodzina ma własne założenia, ograniczenia i zastosowania. Żaden system operacyjny nie jest automatycznie najlepszy do wszystkiego.
Microsoft Windows to rodzina systemów operacyjnych wykorzystywanych przede wszystkim na komputerach osobistych, a w odpowiednich wydaniach także na serwerach i w wyspecjalizowanych środowiskach. Popularność Windows na pecetach wynika między innymi z wieloletniej obecności na rynku, dużego wyboru programów, obsługi różnorodnego sprzętu i przyzwyczajeń użytkowników oraz organizacji.
— Kapitanie, na pokład zgłosiło się dwadzieścia nowych programów.
— Doskonale! Wszystkie przyjąć!
— Jeden jest do projektowania, trzy do księgowości, cztery do gier, a dwanaście twierdzi, że jest koniecznym dodatkiem do przeglądarki.
— I co?
— Te ostatnie na razie zostawiłem za śluzą.
Windows ma charakterystyczny graficzny pulpit, menu Start, okna aplikacji, Eksplorator plików i narzędzia administracyjne. Z czasem zmieniały się wygląd, nazwy ustawień, mechanizmy ochrony i sposób dystrybucji aktualizacji. W zależności od edycji oraz wersji różnią się również dostępne funkcje.
W dużych organizacjach znaczenie mają zarządzanie użytkownikami, politykami, urządzeniami i konfiguracją. Na komputerze domowym częściej liczy się wygoda, zgodność programów i to, czy po podłączeniu sprzętu można po prostu zacząć pracę. Oba światy korzystają z tego samego podstawowego pomysłu: system ma ukrywać niepotrzebną złożoność, ale nie może usuwać kontroli tam, gdzie jest ona ważna.
Rozdział siódmy: kto ma prawo otworzyć maszynownię?
Kapitan postanawia zainstalować nową aplikację.
— Czy zezwolić tej aplikacji na wprowadzanie zmian na urządzeniu?
— Oczywiście! Jestem kapitanem!
— Proszę potwierdzić.
— POTWIERDZAM!
— A skąd pochodzi aplikacja?
— Z wiadomości zatytułowanej „PILNE, BEZPIECZNE, KLIKNIJ NATYCHMIAST”.
— Kapitanie — odzywa się oficer bezpieczeństwa — właśnie dlatego tutaj stoję.
System operacyjny rozróżnia konta, uprawnienia i poziomy dostępu. Zwykły użytkownik nie powinien bez powodu móc modyfikować każdego elementu systemu. W Windows spotkamy między innymi konta użytkowników, administratorów i mechanizm Kontroli konta użytkownika (UAC), który może żądać potwierdzenia operacji wymagających podwyższonych uprawnień.
UAC nie jest magiczną tarczą, podobnie jak program antywirusowy. Bezpieczeństwo zależy również od aktualizacji, konfiguracji, źródeł oprogramowania, rozsądnych uprawnień i zachowania użytkownika. System ma pomóc ograniczać ryzyko; nie zagwarantuje, że każda decyzja człowieka będzie dobra.
— Czyli nie wystarczy, że okienko pyta „Tak” albo „Nie”?
— Nie, kapitanie.
— A co mam zrobić?
— Przeczytać, o co pyta.
— Pan naprawdę nie lubi prostych rozwiązań.
Rozdział ósmy: aktualizacja w najmniej odpowiedniej chwili
W kosmosie zapada cisza. USS Windows zbliża się do stacji orbitalnej. Kapitan wydaje rozkaz rozpoczęcia manewru dokowania.
— Komputer! Przygotować silniki manewrowe!
— Dostępna aktualizacja systemu.
— TO PÓŹNIEJ!
— Aktualizacja zawiera poprawki bezpieczeństwa.
— WIEM! ALE TERAZ DOKUJEMY!
— Możliwe, że po instalacji wymagane będzie ponowne uruchomienie.
— MECHANIKU, PROSZĘ MU WYTŁUMACZYĆ, ŻE NIE RESTARTUJE SIĘ OKRĘTU PODCZAS DOKOWANIA!
— Kapitanie, właśnie dlatego w okrętach planuje się okna serwisowe.
Aktualizacje systemu mogą naprawiać błędy, usuwać podatności, dodawać funkcje i poprawiać zgodność. Potrafią też wprowadzić problemy, dlatego w krytycznych środowiskach liczą się testy, kopie zapasowe i planowanie. Nie każda aktualizacja wymaga restartu, ale część zmian systemowych może go wymagać.
Windows nie jest jedynym systemem, który potrzebuje aktualizacji. Różnica leży w szczegółach mechanizmów, polityk oraz zarządzania. Śmiejemy się z komunikatu w złym momencie, ale nie z samego pomysłu łatania dziur.
— Komputer, przełóż aktualizację na najbliższy postój.
— Przyjęto.
— Widzicie? Można się dogadać!
— Tak, kapitanie. Trzeba tylko wydawać polecenia, które mają sens.
Rozdział dziewiąty: co robi system, a co robi program?
Na mostek wchodzi nawigator z nową aplikacją do liczenia tras.
— Kapitanie, uruchomiłem program nawigacyjny.
— Czyli mamy drugi system operacyjny?
— Nie. Mamy program działający w systemie.
— A jeśli uruchomię edytor tekstu?
— Nadal mamy ten sam system.
— A pasjans?
— Niestety również.
To podstawowe rozróżnienie. System operacyjny tworzy środowisko dla programów, a aplikacje wykonują zadania użytkownika: piszą dokumenty, obrabiają zdjęcia, odtwarzają muzykę czy pomagają prowadzić firmę. Aplikacja korzysta z usług systemu, nie musi każdorazowo sama zarządzać procesorem, pamięcią ani sterownikiem monitora.
Dlatego można zainstalować wiele różnych programów na tym samym Windowsie, ale nie oznacza to, że każdy program napisany dla dowolnego systemu zadziała bez zmian. Programy korzystają z określonych interfejsów i bibliotek, mają wymagania sprzętowe i zależności. Niektóre działają na wielu platformach, inne tylko na wybranych.
— Czyli program jest członkiem załogi, a system organizuje pracę całego okrętu?
— Właśnie tak, kapitanie.
— To dlaczego mój pasjans nie chce obsługiwać reaktora?
— Bo karty nie są paliwem jądrowym.
Raport końcowy: po co nam w ogóle system operacyjny?
USS Windows dociera do stacji. Silniki działają, załoga kończy zadania, dokumenty są na dysku, a aktualizacja czeka na zaplanowane okno serwisowe. Kapitan z dumą ogląda swój okręt.
System operacyjny koordynuje pracę sprzętu, umożliwia uruchamianie aplikacji, zarządza procesami i pamięcią, organizuje dostęp do plików i urządzeń, obsługuje konta oraz uprawnienia, a użytkownikowi daje interfejs do wydawania poleceń. Windows jest jedną z rodzin takich systemów — szeroko używaną, wygodną w wielu zastosowaniach, ale też mającą własne ograniczenia i wymagania administracyjne.
— Komputer, raport końcowy.
— Misja wykonana, kapitanie. Wszystkie podstawowe systemy sprawne.
— Widzicie? Wiedziałem, że wszystko pójdzie zgodnie z planem!
— Odnotowano siedemnaście zmian planu, trzy błędne rozkazy i jeden kubek na panelu dotykowym.
— Tego nie wpisujemy do raportu.
— Raport został już zapisany.
— GDZIE?!
— W katalogu „Dokumenty”. Wersja „OSTATECZNA_NAPRAWDĘ_2”. 🤣
Przed nami kolejne okręty. Na jednym mechanik może przebudować prawie wszystko, na innym nawet śrubki mają zatwierdzony wzór. Ale niezależnie od nazwy statku pytanie jest to samo: jak sprawić, żeby sprzęt, programy i ludzie mogli ze sobą sensownie współpracować?
Dowództwo Floty Systemów Operacyjnych przypomina: nie każdy komunikat wymaga paniki, ale każdy kubek na konsoli należy zgłosić głównemu mechanikowi. Następny okręt już czeka na odprawę. 🚀🤣❤️
