logo
Etusivu
Käsikirja
Opinnäytetyö
Tiedostot
Linkit
Muuta

LeHTori

Käsikirja

2 FreeBSD Käyttöjärjestelmä

2.1 Esitellään FreeBSD

2.2 Asennetaan FreeBSD

2.3 Yleistä UNIX järjestelmistä

2.4 Peruskomennot

2.5 Komentotulkit

2.6 Ohjelmien asentaminen ja päivittäminen

2.7 Käynnistysjonot

2.8 Asetustiedostot

2.9 Levykiintiö eli quota

2.10 FreeBSD:n kerneli

2.11 Yhteyden jakaminen NATD:llä

2.12 Palomuuriohjelmistot

2.13 Cvsup ja verkosta päivittäminen

2.14 Käyttöjärjestelmän päivittäminen

2.15 XFree86 Ikkunointijärjestelmä

2.16 Sysinstall Ohjelmisto

2.17 Yleisiä ongelmia

2.18 Muuta

2.19 Levyjärjestelmän laitteiden-nimet

3 Asennetut palvelinohjelmistot ja niiden käyttäminen

3.1 Samba ja toimialuepalvelin

3.2 Squid, Internetin välityspalvelin (proxy)

3.3 Apache, Web-palvelin

3.4 Postfix, Sähköpostipalvelin

3.5 Popd, Sähköpostin hakupalvelin

3.6 Openwebmail

3.7 Bind9, DNS-palvelin

3.8 OpenSSH

3.9 OpenSSL sertifikaatti


2.18 Muuta

Järjestelmän optimointi

Mitä on binäärien optimointi?

Optimointi yrittää tuottaa "parhaan" mahdollisen konekoodin lähde koodista. "Parhaan" tarkoittaa erilaisia asetuksia eri ohjelmille. Tietokantaa luodaan kasoittain tietoa, kunnes ohjelma saa nopeat ja tarkat tulokset. Ensimmäinen huomattava asia on koodin koko. Lyhyt koodi on nopeaa ja tarkkaa.

Optimoinnilla haetaan nopeutta joka saadaan laittamalla koodi ja laitteisto toimimaan yhdessä tehokkaasti.

Muisti arkkitehtuurit, putkijohdot, on- ja off-chip välimuistit -- kaikki vaikuttaa koodin suorituskykyyn tavoilla jotka eivät ole selviä "koodarin" koodikielellä. Optimisointi mikä saattaa näyttää tuottavan nopeamman koodin voi todellisuudessa luoda pitkän koodin joka lisää välimuisti virheitä.

Optimointi ei ole yksinkertaista tai itsestään selvää, ja eri algoritmien yhdistelmät voivat johtaa ei-toivottuihin lopputuloksiin. Mikä herättää kysymyksen, mitkä ovat parhaat optiot kullekin ohjelmalle?

Ilman '-O', vain muuttujille varataan paikka rekisteristä. Valmis koodi on vähän huonompaa kuin ilman '-O':ta tuotettu PCC:llä..

'-O':n kanssa kääntäjä yrittää pienentää koodin kokoa ja ajo aikaa.

Kun määrität '-O', kaksi optiota menee päälle("-fthread-jumps" ja "-fdefer-pop") Koneissa joissa on lykättyjä paikkoja, "-fdelayed-branch" optio menee päälle. Ne koneet jotka tukevat virheenkorjausta ilman kehysosoitinta "-fomit-frame-pointer" menee päälle. Jossain koneissa saattaa mennä muitakin optioita päälle.

-O2Optioi vielä enemmän. Melkein kaikki tuetut optimaatiot mitkä eivät sisällä tilannopeus vaihtelua suoritetaan.
-O3Optio vieläkin enemmän. Laittaa kaiken minkä -O2 ja sen lisäksi -finline funktion.
-OsOptioi koodin koon. Laittaa päälle ne optiot -O2:sesta jotka eivät kasvata koodin kokoa.
-O0Ei optimointia

Jos käytät monia -O optioita, ilman tai taso numeroiden kanssa viimeisin optio vain toteutuu.

Kuinka käännät itse binäärejä make tai gmake komennolla

Unixissa on olemassa make- ja gmake ovat työkaluja, jolla pystyy helposti hallitsemaan ohjelmistokokonaisuuksia. Ohjelmien väliset riippuvuudet käännöksessä sekä latauksessa, kääntäjien parametrit ja kirjastoiden rakentamiset kerrotaan makefile- tai Makefile tiedostossa, josta make ohjelma lukee ne.

Yleisesti kuinka, joku ohjelma käännettään lähdekoodista itse: Huom! tämä on vain yleinen ohje kääntämisestä, älä pidä sitä sana tarkkana ohjeena. Suosittelen lukemaan sinun README tiedoston. Lähdekoodin kääntäminen itse on usein FreeBSD:llä turhaa, koska portti kokoelmasta löytyvät käyttämistäsi ohjelmista "portit". Lähdekoodista käännettäessä ja asennettaessa ohjelmat eivät näy asennettujen pakettien listassa ja näin ollen niiden poistaminen on vaikeampaa, kuin ohjelmien, jotka ovat asennettu portti kokoelmasta. Ohjelman kääntäminen lähdekoodista itse.

  • Pura ohjelman pakkaus (tar zxvf paketti.tar.gz tai tar jxvf peketti.tar.bz2)
  • Siirry hakemistoon johon purit koodisi (cd hakemisto)
  • Käynnistä configure scripta ja anna tarvittavat arvot (./configure)

./configure -help komennolla saat tietää configure ohjelman valitsimet, jolla voidaan asettaa erilaisia asetuksia ennen ohjelman kääntämistä, kuten asennus kansio. Muutama yleisin valitsin

1. --prefix=/home/tunnusAsennus hakemisto
2. --libdir=hakemistoobjektin koodi kirjastot hakemisto
3. --includedir=hakemistoC otsikkotiedot hakemisto
4. Käännä lähdekoodisi binaareiksi (make tai gmake komenolla)
5. Asennetaan binaarit paikoilleen (make install)

Kuinka voin poistaa asennetun ohjelman?
Asennettuasi ohjelman voit yrittää poistaa ohjelmaa lähdekoodista, jonka käänsit seuraavalla komennoilla make uninstall, gmake uinstall, make deinstall, gmake deinstall. Kaikkia ohjelmia välttämättä ei voida poistaa näillä komennoilla. Tällöin joudut turvautumaan ohjelman poistamiseen käsin.

daemon

Tero Asikainen, Mika Mähönen ja Markku Hämäläinen