Az informatika alapjai

Download Report

Transcript Az informatika alapjai

Archiválás, tömörítés
• Archiválás (biztonsági másolat,
tartósabb idejű „megőrzés”) –
külön tudomány.
• Tömörítés: helymegtakarítás.
• Másolás és tömörítés.
• Backup - restore.
A tömörítés egy olyan eljárás,
amelynek segítségével egy file-ból egy
kisebb file állítható elő. Ha a tömörített
file-ból teljes mértékben visszanyerhető az eredeti file („bitről bitre”),
akkor veszteségmentes, ha nem, akkor
veszteséges tömörítésről beszélünk.
Az első általánosan alkalmazható, a
második csak akkor, ha kis eltérések
nem számítanak, pl. kép- és hangfile-ok esetén.
A veszteséges tömörítési eljárások
általában hatékonyabbak, de nem
minden esetben alkalmazhatóak egy futtatható programot akár egy
bitnyi eltérés is használhatatlanná
tenne.
A tömörítés nagyon hasznos lehet, ha pl. helyet
akarunk megspórolni a lemezen, vagy egy
viszonylag lassú (pl. telefon) vonalon
szeretnénk egy nagyobb file-t elküldeni.
Általános szabályként elmondható, hogy minél
hatékonyabb egy tömörítési eljárás, annál több
számolást igényel, vagyis lassabb. Nincs
„optimális” tömörítés, mindig el kell dönteni,
hogy érdemes-e több időt rááldozni arra, hogy a
kapott file valamivel kisebb legyen.
A tömörítések többek között a file-ban levő
ismétlődéseket
és
más
redundanciákat
használják ki, például azt, hogy egy szöveg-file
minden egyes byte-ján 256 érték lenne
ábrázolható, szemben az általában kihasznált
kb. 70 betűvel és írásjellel. Azok a file-ok,
amelyek nem ennyire „rendezettek”, kevésbé
tömöríthetők. Például egy bináris file általában
kevésbé tömöríthető, mint egy szöveg-file, egy
tömörített file pedig szinte egyáltalán nem
tömöríthető tovább.
A különböző típusú tömörítő
programok különböző módszereket
használnak az állományok becsomagolására. A becsomagolás hatékonysága nagymértékben függ az állomány
típusától is.
Az adattömörítés módszerei
Az operációs rendszer az állományokat a háttértárolón
ún. klaszterekben tárolja. 1 klaszter mérete ált. 8
szektor, azaz 4096 byte. Minden állomány külön
klaszterben kezdődik, amennyiben a tárolandó adat
túlnyúlik az igénybevett klaszter területén, akkor az
operációs rendszer újabb blokkban folytatja az írást, és
ez addig folytatódik, amíg van kiírandó adat. A fileokat nem lehet úgy méretezni, hogy teljesen
kitöltsenek egy blokkot, így a helykihasználás nem jó.
A helykihasználás javítható, ha az állományokat egy
állományba tömörítjük össze, így a blokkba történő
írás folyamatos.
A másik módszer, hogy a file-okban nagy
számban ismétlődő szerkezeteket megfelelő
módon helyettesítjük, így akár nagyságrendekkel
csökkenthetjük a file tárolásához szükséges
lemezkapacitást.
Például a szöveges állományok jól tömöríthetők,
mivel gyakran vannak bennük ismétlődések. Ha
ugyanazt a karaktert kell egymás után 50-szer
tárolni, akkor elegendő 50 byte helyett 3 byte a
tároláshoz. Ez úgy lehetséges, hogy az ismétlődő
karakterek számát 2 byte-on a karaktert pedig
elegendő 1 byte-on tárolni.
Tehát, kisebb méretű állományokhoz úgy
jutunk, hogy a gyakran ismétlődő
karaktereket, karaktersorozatokat, rövidebb
kódokkal helyettesítjük, ahol minden kód
egy jelet vagy jelsorozatot képvisel. Például
a magyar nyelvben nagyon gyakori „e”
betűt, melynek a bináris megfelelőjét
01100101 (ASCII kódban), egy rövidebb
kóddal helyettesítjük, pl. 101-gyel, akkor a
korábbi 8 bit helyett csak 3 bitet
használunk, ez máris több mint 50%-os
helycsökkenést jelent.
Most
már
csak
a
megfelelő
algoritmusról kell gondoskodnunk, ami
a rövidebb kódokat visszaállítás esetén
visszaalakítja eredeti méretűre. Azért,
hogy a tömörített kódok mindig
visszaállíthatók
legyenek
eredeti
állapotukra, a tömörítő programok
mindig eltárolják a tömörítetlen kódokat
az archív állományok elején.
A tömörítetlen kódokat hívjuk átváltási
táblázatnak is, hiszen ez mondja meg, hogy
melyik bitsorozatot mivel helyettesítjük. A nagy
mennyiségű, vegyes összetételű file esetén a
tömörítő programok hatékonysága általában
nem megy 50% fölé. A különbség a képek
tömörítésénél a legszembetűnőbb. A BMP
állományok jól tömöríthetők (akár 90% is lehet),
mert nagy bennük az adatok ismétlődése. A GIF,
TIFF kiterjesztésű képállományok tömörítési
hatékonysága rossz (5% körüli), mivel ezek a
file-típusok már tömörített formátumúak.
A beszerezhető adattömörítő programok használatához
nem kell különösebb előképzettség, a tömörítés
bonyolult matematikája a programozókra és a
matematikusokra tartozik.
Tömörítő programok
1. Dos-os programok:
ARJ
PKZIP (becsomagoló), PKUNZIP (kicsomagoló)
RAR
2. Windows-os programok:
WINRAR
WINZIP
ACE
HTML
Hypertext Mark-up Language
• HTML-szerkesztők (Microsoft
FrontPage).
• Word-konverzió.
• ASCII szövegszerkesztők
(pl. Jegyzettömb)
SGML, XML
SGML
Az SGML (Standard Generalized Markup
Language) egy szövegleíró nyelv. Leginkább a
HTML-hez lehetne hasonlítani, valójában a HTML
is az SGML nyelvből származtatható. A szöveg
tagolását, formázását tag-ekkel oldják meg a HTMLhez hasonlóan, azonban a HTML-től eltérően a tageket mi definiálhatjuk tetszés szerint, olyan nevet
adhatunk nekik, amit logikusnak tartunk. Ezeket a
tag definíciókat egy DTD dokumentumleíró fileban
kell megadni.
Az SGML-ből lehet saját elemkészlettel
rendelkező
dokumentum
típus
leírást
létrehozni, s ezen saját dokumentum típusok
létrehozásának legismertebb terméke az 1991ben létrehozott HTML volt.
Mivel az SGML-ben elég tág korlátok közé
vannak
szorítva
az
egyes
elemek
létrehozásának feltételei, nehézkes lenne
olyan programot írni, amely tökéletesen fel
tudná dolgozni ezen dokumentumokat. A
HTML nyelvben viszont kezdett nehézkessé
válni a bonyolultabb felépítésű adatok
tárolása, illetve megjelenítése.
XML
Ezért volt szükség egy, a web-re optimalizált jelölőnyelv
létrehozására, amelyet 1996-ban alkottak meg Extensible
Markup Language néven.
Az XML, mint ahogy a HTML is, az SGMLből
leszármaztatott jelölőnyelv. Annak ellenére, hogy mindkét
jelölőnyelv ősatyja ugyanazon nyelv, mégis alapjaikban
különböznek. Míg a HTML megadott elemhalmazból épül
fel, addig az XML-ben saját magunk hozzuk létre az egyes
elemeket.
Mivel az XML-ben az elemek létrehozására szűkebb
szabályok vonatkoznak mint az SGML-re, ezért könnyebben
megtanulható, olvasható és leprogramozható.
Számítógéppel támogatott
oktatás, kutatás
• Office’xx.
• Programcsomagok (Mathematica,
Maple, Derive stb.).
• Oktatóprogramok.
• Saját készítésű programok.