# data[].attributes.headline
Dla przyjemniejszego odbioru prosty schemacik

# data[].attributes.subject
Dla przyjemniejszego odbioru prosty schemacik

# data[].attributes.body
Moduł sterujący sprzętem (sterowniki) jest odpowiedzialny za obsługę przerwań i za komunikowanie się z komputerem poprzez główną magistralę.

# data[].attributes.body
Główna struktura zawierająca wszystkie potrzebne rzeczy do komunikowania się z sprzętem poprzez sterowniki.

No więc jądro otrzymało niebezpośrednią prośbę o włączenie gry/programu, więc mówi podsystemowi sterującym przerwaniami (scheduler) aby utworzył nowy proces, ten następnie go tworzy i mówi menedżerowi pamięci aby zaalokował nową ramkę dla tego procesu i tak dalej, po wykonaniu wielu procedur między innymi utworzenie nowej struktury dla rejestrów procesu, stosu i dodanie go do listy procesów; później kolejnym krokiem jest załadowanie naszej gry/programu z dysku, więc jądro komunikuje się z podsystemem plików który następnie za pomocą odpowiedniego sterownika ładuje naszą grę do pamięci RAM odpowiednio komunikując się z menedżerem pamięci aby alokował nam odpowiednie miejsce i tworzył i rozszerzał ramki.
Po załadowaniu całego pliku gry podsystem sterowania procesami każę zmienić atrybuty dostępu ramki tego procesu na wykonywalny i możliwy z dostępu shella czyli naszego prekursora dzięki czemu użytkownik może się komunikować z tym programem. Następnie scheduler oddaje proces do użytku ustawiając mu odpowiednią flagę i włącza go.

# data[].attributes.body
Shell jest pośrednikiem pomiędzy jądrem a użytkownikiem. komunikuje się z interfejsem funkcji systemowych.

Następnie shell otrzymał "prośbę" o włączenie programu w naszym przypadku Tomb Raidera; więc używając interfejsu funkcji systemowych wywołuje przerwanie programowe; mówiąc mniej więcej do jądra: "ej ty jądro weź zapodaj no do RAM-u mi tu tego Tomb Raidera[...]", oczywiście jest to dużo bardziej skomplikowana procedura ale to tak po krótce.

# data[].attributes.body
W tym poziomie możemy wyróżnić dwie główne "funkcje"; mianowicie aplikacje użytkownika oraz biblioteki.

Nasz potencjalny delikwent który powiedział by na przykład że teraz "bede grać w gre" np. powiedzmy że byłby to Tomb Raider, uruchamia ją korzystając z powłoki najpewniej GUI czyli w cudzysłowu mówimy shellowi ej ty włącz mi Tomb Raidera.

# data[].attributes.body
No jeśli chciałbyś dowiedzieć się jak napisać swój własny system operacyjny to odsyłam do mojej prezentacji o PPSO.
Link: https://docs.google.com/presentation/d/1SEuUVc-7nqI4tXmUrUnMtFJZgcu1GThL8PgIO-S15kA/edit?usp=sharing

# data[].attributes.headline
Architektura systemu Linux; czyli jak zbudowany jest linux

# data[].attributes.subject
Architektura systemu Linux; czyli jak zbudowany jest linux

# data[].attributes.body
Greg Kroah-Hartman jest głównym opiekunem jądra Linuksa i kieruje jego rozwojem. William John Sullivan jest dyrektorem wykonawczym Fundacji Wolnego Oprogramowania, która z kolei wspiera komponenty GNU. Wreszcie, osoby prywatne i korporacje rozwijają komponenty stron trzecich, nie należące do GNU. Te komponenty stron trzecich zawierają ogromną ilość pracy i mogą zawierać zarówno moduły jądra, jak i aplikacje i biblioteki użytkownika.

Sprzedawcy i społeczności Linuksa łączą i rozprowadzają jądro, komponenty GNU i komponenty spoza GNU wraz z dodatkowym oprogramowaniem do zarządzania pakietami w postaci dystrybucji Linuksa.

# data[].attributes.headline
Ciąg dalszy tej długiej historii; W skrócie utworzenie Linuxa

# data[].attributes.subject
Ciąg dalszy tej długiej historii; W skrócie utworzenie Linuxa

# data[].attributes.body
W 1991 roku, podczas studiów na Uniwersytecie w Helsinkach, Torvalds zaciekawił się systemami operacyjnymi. Sfrustrowany licencjonowaniem MINIX-a, które w tamtym czasie ograniczało go tylko do użytku edukacyjnego, zaczął pracować nad własnym jądrem systemu operacyjnego, które ostatecznie stało się jądrem Linuksa.

Torvalds rozpoczął rozwój jądra Linuksa na MINIX-ie, a aplikacje napisane dla MINIX-a były również używane w Linuksie. Później Linux dojrzał i dalszy rozwój jądra Linuksa odbywał się na systemach linuksowych. Aplikacje GNU również zastąpiły wszystkie komponenty MINIX-a, ponieważ korzystne było użycie wolnego kodu z Projektu GNU w raczkującym systemie operacyjnym; kod na licencji GNU GPL może być ponownie użyty w innych programach komputerowych, o ile są one wydane na tej samej lub kompatybilnej licencji. Torvalds zainicjował przejście od swojej oryginalnej licencji, która zabraniała komercyjnej redystrybucji, do GNU GPL. Programiści pracowali nad zintegrowaniem komponentów GNU z jądrem Linuksa, tworząc w pełni funkcjonalny i wolny system operacyjny.

# data[].attributes.headline
A teraz trochę historii; Zanim powstał pomysł na Linuxa...

# data[].attributes.subject
A teraz trochę historii; Zanim powstał pomysł na Linuxa...

# data[].attributes.body
System operacyjny Unix został wymyślony i wdrożony w 1969 roku w Bell Labs firmy AT&T w Stanach Zjednoczonych przez Kena Thompsona, Dennisa Ritchie, Douglasa McIlroya i Joe Ossanna. Wydany po raz pierwszy w 1971 roku Unix został napisany w całości w języku asemblera, co było powszechną praktyką w tamtym czasie. W 1973 r. Dennis Ritchie napisał go ponownie w języku programowania C (z wyjątkiem niektórych procedur sprzętowych i I/O). Dostępność implementacji Uniksa w języku wysokiego poziomu ułatwiła przenoszenie go na różne platformy komputerowe.

Ze względu na wcześniejszą sprawę antymonopolową, zabraniającą jej wejścia w biznes komputerowy, AT&T była zobowiązana do udzielenia licencji na kod źródłowy systemu operacyjnego każdemu, kto o to poprosi. W rezultacie Unix szybko się rozwijał i został powszechnie przyjęty przez instytucje akademickie i przedsiębiorstwa. W 1984 roku AT&T pozbyło się Bell Labs; uwolnione od prawnego obowiązku darmowego licencjonowania, Bell Labs zaczęło sprzedawać Uniksa jako produkt zastrzeżony, w którym użytkownicy nie mieli prawnej możliwości modyfikowania Uniksa.

Projekt GNU, rozpoczęty w 1983 roku przez Richarda Stallmana, miał na celu stworzenie "kompletnego systemu oprogramowania kompatybilnego z Uniksem", składającego się w całości z wolnego oprogramowania. Prace rozpoczęły się w 1984 roku. Później, w 1985 roku, Stallman założył Fundację Wolnego Oprogramowania, a w 1989 roku napisał Powszechną Licencję Publiczną GNU (GNU GPL). Do początku lat 90. wiele programów wymaganych w systemie operacyjnym (takich jak biblioteki, kompilatory, edytory tekstu, powłoka wiersza poleceń i system okien) było ukończonych, chociaż elementy niskiego poziomu, takie jak sterowniki urządzeń, demony i jądro, zwane GNU Hurd, były wstrzymane i niekompletne.

Linus Torvalds stwierdził, że gdyby jądro GNU było dostępne w tamtym czasie (1991), nie zdecydowałby się na napisanie własnego. Chociaż nie zostało wydane do 1992 roku, z powodu komplikacji prawnych, rozwój 386BSD, z którego wywodzą się NetBSD, OpenBSD i FreeBSD, wyprzedził rozwój Linuksa. Torvalds stwierdził również, że gdyby 386BSD było dostępne w tamtym czasie, prawdopodobnie nie stworzyłby Linuksa.

MINIX został stworzony przez Andrew S. Tanenbauma, profesora informatyki, i wydany w 1987 roku jako minimalny uniksopodobny system operacyjny skierowany do studentów i innych osób, które chciały nauczyć się zasad działania systemu operacyjnego. Chociaż kompletny kod źródłowy MINIX-a był swobodnie dostępny, warunki licencyjne uniemożliwiały uznanie go za wolne oprogramowanie do czasu zmiany licencji w kwietniu 2000 roku.

# data[].attributes.body
Linux Mint

Ubuntu

Fedora

Debian GNU/Linux

openSUSE

Arch Linux

PCLinuxOS

CentOS/Red Hat Enterprise Linux

Mandriva Linux

Slackware

# data[].attributes.body
Dystrybucja Linuksa – uniksopodobny kompletny system operacyjny zbudowany na bazie jądra Linux. Znakomita większość dystrybucji zawiera dużo elementów projektu GNU, co sprawia, że są one dystrybucjami GNU/Linuksa. W skład dystrybucji, oprócz samego jądra, wchodzą podstawowe programy i usługi takie, jak powłoka, skrypty startowe, narzędzia konfiguracyjne, a także często duży zestaw aplikacji użytkowych. W obrębie dystrybucji używana jest jednolita organizacja plików konfiguracyjnych oraz wspólny mechanizm instalowania nowych aplikacji. Niekiedy terminem „dystrybucja” określa się także systemy zbudowane na bazie jąder innych niż Linux (np. GNU Hurd, czy jądro FreeBSD); szczególnie można tutaj wyróżnić klony dystrybucji uniksowych (np. Debian).

# data[].attributes.body
Linux to rodzina uniksopodobnych systemów operacyjnych typu open-source opartych na jądrze Linux, jądrze systemu operacyjnego wydanym po raz pierwszy 17 września 1991 roku przez Linusa Torvaldsa.