Kihagyás

Alkalmazások futtatási módjai

Felhasználói felület

A felhasználói felület (angolul user interface, röviden UI) egy berendezés (például a számítógép), vagy egy számítógépes program (például egy operációs rendszer) azon elemeinek összessége, amelyek a felhasználóval való kommunikációért felelősek, és a berendezés vagy program irányítását, vezérlését lehetővé teszik.

Unix rendszerhéj (Shell)

A Unix operációs rendszerben különféle parancssori értelmezők működnek, melyeket rendszerhéjnak vagy angolul shellnek nevezünk. Ez a rendszerhéj az összekötő kapocs a rendszer magját képező kernel és a felhasználó között. Az asztali rendszereken ezeket többnyire grafikus felületek egészítik ki. A shellből (konzolról) vezérelt gépek előnye, hogy jóval kisebb erőforrásigényűek a grafikus felületeknél. A grafikus felhasználói felületek (GUI) ugyanis egyrészt újabb réteget képeznek a rendszermag és a felhasználó között, másrészt erőforrásigényük többnyire magas. Ennek következtében a shellből (konzolról) vezérelt rendszerek stabilabbak, és gyorsabbak, így teherbírásuk miatt napjainkban főleg Unix alapú kiszolgálókon (szervereken) népszerűek.

Minden Unix alapú rendszerben lehetséges:

  • saját parancsok kivitelezése
  • "wildcard"-ok (speciális illesztések) használata fájlnevekben: *, ?
  • héjprogramok ("szkript"-ek) végrehajtása
  • feltételes kifejezések (if, case) és ciklusok (while, for) alkalmazása
  • beépített parancsok használata (cd, read)
  • belső változók használata
  • a környezet manipulálása új folyamatok indítása előtt
  • bemenet és kimenet átirányítása
  • több folyamat indítása, ezek adatcseréje csöveken (pipe) keresztül
  • folyamatok indítása a háttérben
  • a jelentkezési karakter definiálása (prompt)
  • külső parancsok keresési sorrendjének megadása

A modernebb rendszerhéjak ezen felül még az alábbi tulajdonságokkal is rendelkeznek:

  • parancssorszerkesztés (command line editing) és kiegészítés (completion)
  • korábbi parancsok visszakeresése és szerkesztése (command history)
  • folyamatok megállítása és újraindítása (Job Control)
  • számítási feladatok elvégzése (expr)
  • állománytulajdonságok tesztelése (test)
  • jelzések (signal) küldése (kill) és fogadása (trap)
  • más folyamat bevárása (wait)

Ablakkezelő és X Server

Az ablakkezelő (angolul window manager) egy olyan szoftver, ami az ablakok megjelenítését vezérli az X Window System alatt. A kijelző szerver vezérli az ablakok elhelyezését. Többnyire a Unix-szerű rendszereken használják.

A Apple Macintosh és Microsoft Windows rendszerek kivételével, melyek a kezdetektől fogva saját megoldásokat használtak az ablakok és panelek megjelenítésére, valamint a felhasználóval való együttműködésre, az X Window System ablakkezelő rendszerei alapértelmezetten egy szeparált réteget képeznek a grafikus felhasználói felület megvalósítására. A felhasználó egy egész sor (különböző forrásból származó) ablakkezelő közül választhat melyek ugyanazt a cél különböző utakon érik el.

  • a külső megjelenés és működés testreszabhatósága
    • szöveges menü használata a programok indítására és a beállítások módosítására
    • dokkok és egyéb megoldások a programok indítására
    • több munkaasztal és virtuális munkaasztal (a monitor fizikai méreteinél nagyobb munkaasztal), és lapozók a munkaasztalok közötti váltásra
  • a memória és rendszererőforrások kezelése
  • az integráció egy magasabb foka a grafikus felhasználói felületek révén, beépített alkalmazásokkal és segédprogramokkal egy összetettebb kezelőfelületet megvalósítása az operációs rendszerhez.

Hogy működnek az ablakkezelők X alatt?

Amikor fut egy ablakkezelő, akkor az X kijelző szerver és a kliensek közötti üzenetek egy részét az ablakkezelő közvetíti. Például ha egy új ablak megjelenítésére ad parancsot a rendszer akkor ez továbbítódik az ablakkezelőhöz, ami megadja a megjelenítendő ablak pozícióját. A modernebb ablakkezelők emellett megjelenítenek az ablakhoz egy az adott megjelenítési stílusnak megfelelő fejlécet és keretet. Ezeket az elemeket az ablakkezelő vezérli és nem maga a program. Ha a felhasználó az ablakot az egérrel odébb akarja húzni, vagy csak rákattint akkor is az ablakkezelő vezényli le az eseményeket.

Grafikus programok

Grafikus felhasználói felület

A grafikus felhasználói felület vagy grafikus felhasználói interfész (angolul graphical user interface, röviden GUI) a számítástechnikában olyan, a számítógép és ember közti kapcsolatot megvalósító elemek összessége, melyek a monitor képernyőjén szöveges és rajzos elemek együtteseként jelennek meg. A grafikus felhasználói felületeken alapvető szerepe van a mutatóeszközök, például az egér használatának, amelyekkel a grafikus felület elemei intuitív módon, a fizikai világ egyfajta modelljeként kezelhetők.

Keressünk analógiát!

Egy gombnak a legynomása a grafikus felületen a fizikai világban lévő gombok működését modellezi. Keressünk további hasonló párokat a grafikus felület elemei, viselkedése és fiziaki objektumok között.

Szöveges felhasználói felület

A szöveges felhasználói felület (angolul: Text User Interface, elterjedt rövidítése: TUI) olyan felhasználói felület, ahol a monitoron színes, vagy fekete-fehér rendszer esetén színárnyalatos, szöveges feliratú karaktercellák jelennek meg. Itt a fő beviteli eszköz a billentyűzet, de a kurzor pozicionálásához valamilyen speciális mutatóeszköz (például a TAB billentyű vagy egér) is használható. A kijelzés nagy részben karaktersoros formában történik. Ez a típus nem a képernyő pixel alapú grafikus, hanem a szöveges üzemmódját használja, azonban a kiterjesztett ANSI karakterkészlet kvázigrafikus jelek alkalmazását is lehetővé teszi.

Mivel a GUI-k és a TUI-k általában a legtöbb vagy az összes odaillő parancskategóriát megjelenítik, a felhasználók általában könnyebben tanulják meg azok használatát, mint a CLI-két. Ennek ellenére, mivel a megjelenített lehetőségek a felhasználónak szánva lettek kiírva, és ez általában korlátozottabb, mint az összes lehetőség, ezért a szoftver összes funkcióinak kihasználása sok időbe telhet egy GUI-rendszerben.

Fájlkezelés MidnightCommander-rel

Gép terhelésének vizsgálata HTop-pal

Parancssori programok

Parancssori felhasználói felület

Ennél a felhasználói felületnél a felhasználóval való kapcsolattartás parancsok segítségével történik. A felhasználó a billentyűzeten parancsokat gépel be, melyet a számítógép értelmez, végrehajt, és az eredményt (ha van) a képernyőn megjeleníti, esetleg hangjelzéssel jelzi a parancsvégrehajtás befejezését. A kimenet nem csak a monitor lehet, hanem tetszőleges fájl is.

Parancssori felhasználói felülettel szinte mindegyik operációs rendszer rendelkezik, mert sok olyan feladat is megoldható vele, amelyekre a grafikus felhasználói felület nem ad lehetőséget.

Navigálás a fájlrendszerben Linux parancsok segítségével

Fájlok és mappák kezelése és szerkesztése Linux parancssorból

Szolgáltatások

Nem mindegyik program rendelkezik "közvetlen" felhasználói felülettel. Bizonyos szolgáltatásokat megvalósító folyamatok az operációs rendszerrel együtt indulnak el és folyamatosan, a felhasználó beavatkozása (és sokszor tudta nélkül) látják el a feladatukat.

Unix daemon folyamatok

A UNIX operációs rendszerben vannak olyan feladatok, amiket a háttérben (gyakran "észrevétlenül") futó folyamatok végeznek el. Ilyen például a rendszeres vagy időzített feladatok futtatását végzo cron program. Ezeket a programokat daemon folyamatoknak is nevezik. Mivel ezeket a folyamatokat nem a terminálról indítják, általában a rendszerindításkor automatikusan indulnak el, ezért nem illik a képernyore írniuk (esetleg nagyon nagy rendszerhibák esetén ezt azért megtehetik), és nem illik olyan erőforásokat lefoglalniuk, amikre nincs szükségük.

Milyen deamon folyamatok futnak a gépeden?

Szerverek

A hétköznapi értelemben vett "szerverek" által biztosított szolgáltatásokat ilyen folyamatok valósítják meg.

  • httpd weboldalakat kiszolgáló szerver
  • smtpd levél szerver
  • ftpd fájl átvitelt megvalósító szerver
  • ...
Etimológia

According to Fernando J. Corbató, who worked on Project MAC in 1963, his team was the first to use the term daemon, inspired by Maxwell's demon, an imaginary agent in physics and thermodynamics that helped to sort molecules, stating, "We fancifully began to use the word daemon to describe background processes that worked tirelessly to perform system chores".

A Maxwell-démon egy gondolatkísérlet, amelyet James Clerk Maxwell skót fizikusról (1831–1879) neveztek el, aki 1871-ben adta közre először. A „démon” egy olyan elképzelt elméleti lény vagy szerkezet, amelynek működése (ha megvalósulna), megkérdőjelezné a termodinamika második főtételének érvényességét. Az eredeti gondolatkísérlet egy tartályt ír le, amelynek terét egy válaszfal két térrészre osztja. A falban egy kicsiny, nyitható és lezárható nyílás („ajtó”) van. Mindkét térrész levegőt tartalmaz. Kiindulási helyzetben a levegő hőmérséklete mindkét térrészben azonos. Az ajtót egy olyan lény vagy szerkezet kezeli (a „démon” szót csak később találták ki erre), aki képes a molekulákat „látni”. Ez úgy nyitja és zárja az ajtót, hogy a „gyors” (azaz erős hőmozgású) molekulák az egyik, a „lassú” (gyenge hőmozgású) mozgó molekulák a másik térrészben gyűljenek össze. Az elképzelt ideális körülmények között az ajtó nyitása és csukása nem igényel energia-ráfordítást. A molekulák szétválogatása révén kialakult hőmérsékletkülönbség mégis alkalmas lenne hőenergia kinyerésére, például egy hőerőgép működtetésére.

Az X-server miért nem deamon?

https://unix.stackexchange.com/questions/489971/why-is-the-x-server-process-not-a-daemon

Windows services

A Windows NT operációs rendszerek esetében Windows szolgáltatások alatt olyan folyamatokat értünk amik felhasználói felület nélkül, a háttérben futnak. Ezek inítását és kezelését a services.exe alkalmazás végzi. Mivel ezek a felhasználó kontextusán kívül, saját felhasználó alatt futnak, ezért lehetőség van rá hogy akkor is működjenek, ha nincs bejelentkezett felhasználó a rendszerben.

Milyen szolgáltatások futnak a gépeden?

Kapcsolódó parancsok

Futó, 'S'-sel keződő szolgáltatások leírásának megjelenítése (PowerShell)

1
Get-Service | Where-Object {$_.Status -eq "Running" -and $_.Name.StartsWith('S')} | Select-Object DisplayName

Szolgáltatás tulajdonságai (és metódusai) (PowerShell)

1
Get-Service | Get-Member

Deamon folyamatok listázása (bash)

1
service --status-all

Utolsó frissítés: 2021-03-20 13:26:18