Kuori (ohjelmisto)

Wikipediasta
Siirry navigaatioon Siirry hakuun
Graafinen käyttöliittymä 1980-luvun loppupuolelta, jossa on man-sivu auki TUI-ikkunassa. Toinen Unix-kuoren teksti-ikkuna on osittain näkyvissä.

Kuori (englanniksi shell, anglismina shelli) on tietokoneohjelma, jonka avulla ihmiskäyttäjä tai tietokoneohjelma voi käyttää käyttöjärjestelmän toimintoja. Yleensä käyttöjärjestelmän kuoret käyttävät joko komentoliittymää (CLI) tai graafista käyttöliittymää (GUI), riippuen tietokoneen ja ohjelmiston tehtävästä.[1][2]

Käyttääkseen komentorivin kuoria käyttäjän täytyy tietää niiden komennot ja kutsusyntaksit, ja ymmärtää komentoliittymän komentosarjakieltä (esimerkiksi bash).[2]

Graafisien kuoriohjelmien käytön oppiminen on helpompaa.[3] Komentoliittymäkuoret tosin ovat joihinkin käyttötarkoituksiin sopivampia, joten useimpien graafista käyttöliittymää käyttävien käyttöjärjestelmien mukana tulee myös komentoliittymäkuori.[2]

Käyttöjärjestelmillä on monia tehtäviä, kuten tiedostojen hallinta, prosessinhallinta (sovellusten suorittaminen ja lopettaminen), eräajo sekä käyttöjärjestelmän valvonta ja asetukset.[2]

Useimmat käyttöjärjestelmän kuoret eivät ole suoria rajapintoja ytimeen. Kuoret ovat useimmiten sovelluksia, jotka käyttävät ytimen ohjelmointirajapintaa samalla tavalla kuin muut sovellukset käyttävät sitä. Kuoren päätehtävänä on käyttäjän ja järjestelmän välisen vuorovaikutuksen käsitteleminen.[4] Koska käyttöjärjestelmän kuori on sovellus, useimmilla käyttöjärjestelmillä se on helppo korvata toisella vastaavalla sovelluksella[2]

Paikallisissa järjestelmissä toimivien kuorien lisäksi on olemassa erilaisia tapoja saada etäjärjestelmät paikallisten käyttäjien saataville. Näitä tapoja kutsutaan yleensä etäkäytöksi tai etähallinnaksi. Sitä käytettiin alun perin monen käyttäjän suurtietokoneissa, jotka tarjosivat tekstipohjaisia käyttöliittymiä kullekin aktiiviselle käyttäjälle samanaikaisesti päätteen avulla, joka oli kytketty suurtietokoneeseen sarjakaapelin tai modeemin kautta. Nykyään etäkäyttö koskee myös Unixin kaltaisia käyttöjärjestelmiä ja Microsoft Windowsia. Unixin kaltaisilla käyttöjärjestelmillä Secure Shell protokollaa käytetään yleensä tekstipohjaisten kuorten käyttämiseen, kun taas SSH-tunnelia voidaan käyttää X ikkunointijärjestelmään pohjautuvien graafisten käyttöliittymien käyttämiseen. Microsoft Windowsissa "Remote Desktop Protocol (RDP)" -protokollaa voi käyttää graafisen käyttöliittymän etäkäyttöön, ja Windows Vistasta alkaen PowerShell Remotea voi käyttää tekstipohjaiseen etäkäyttöön WMI:n, RPC:n ja WS-Managementin avulla.[5]

Useimmat käyttöjärjestelmän kuoret kuuluvat kahteen luokkaan – komentorivi ja graafinen. Komentorivien kuoret tarjoavat komentoriviliittymän (CLI) käyttöjärjestelmälle, kun taas graafiset kuoret tarjoavat graafisen käyttöliittymän (GUI). Lisäksi on olemassa puhekäyttöliittymä ja erilaisia tekstipohjaisia käyttöliittymiä (TUI). Tekstipohjainen käyttöliittymä ei ole sama asia kuin komentoliittymä.

  1. shell The Jargon File.
  2. a b c d e Paavo Nieminen, Jarmo Ernvall, Pentti Hämäläinen, Juha Rautiainen, Emma Lindfors, Ari Tuhkala, Tomi Lundberg: ITKA203 – Käyttöjärjestelmät Kurssimateriaalia: ”luentomoniste” 14.3.2018. Jyväskylän Yliopisto. Arkistoitu Viitattu 26.12.2020.
  3. Antony Unwin, Hofmann Heike: GUI and Command-line - Conflict or Synergy? Tammikuu 2000. ResearchGate. Viitattu 27.12.2020. (englanti)
  4. Operating system shells AIX 6.1 Information Center. IBM Corp. Viitattu September 16, 2012.
  5. Wheeler: Running Remote Commands Microsoft Docs. 14 October 2018. Microsoft. ”"You can run commands on one or hundreds of computers with a single PowerShell command. Windows PowerShell supports remote computing by using various technologies, including WMI, RPC, and WS-Management."” Viitattu 30 June 2019.