2012. október 9., kedd

Számítógép architektúrák - SZSZK 21


Az utasítás szerkezet
---------------------

- Az utasítások megadásakor meg kell adni az elvégezni kívánt műveletet és  meg kell adni az utasítások végrehajtása közben felhasználni kívánt adatokat. Ezek az adatok az OPERANDUSOK.

- Az operandusok több féle módon állhatnak rendelkezésre:
- saját értékével- közvetlenül
- eltárolva egy regisztrerben vagy a memóriában
- külső forrásból, például egy perifériából.

- Az utasításban szereplő adatok helyének meghatározásával a címzési módok foglalkoznak:
- közvetlen adatcímzés
- regisztercímzés
- közvetlen memória címzés
- indirekt címzések

===> Egy processzor utasítás általános szerkezete:

UTASTÁSKÓD - CÍMZÉSI MÓD - OPERANDUS

Megjegyzés: a gépi kódú utasításokban mindhárom szerkezeti elemet bináris számok azonosítják.

Utasítás típusok
----------------

1., Operandusok száma alapján történő csoportosítás
- Nulla operandusú utasítás -> nincs operandus (Pl. NOP, ami nem csinál semmit.)
- 1 operandusú utasítás - ide azok az utasítások taroznak, ahol elegendő egy információ a művelet elvégzéséhez (ilyen pl. egy logikai művelet)
- 2 operandusú utasítások - legáltalánosabb utasítások, ebben műveletben két operandus szerepel, ahol a művelet eredménye általában az első operandus helyére kerül.

2., Adatmozgató utasítások - adatok mozgatása két opernadus között

3., Számítási műveletek - ebbe a csoportba taroznak a számítógépen általánosan alkalmazott matematikai műveletek és speciális parancsok.

a., Aritmetikai műveletek
- ADD - összeadás
- SUB - kivonás
- CMP - összehasonlítás
- MUL - szorzás
- DIV - osztás

b., Logikai műveletek
- AND (logikai ÉS)
- NOT (logikai TAGADÁS)
- TEST - bitek értékének tesztelése
- SHL (bitléptetés balra), SHR (bitléptetés jobbra) stb., 

4., Összehasonlító és elágazás-kezelő utasítások

- Az utasítás végrehajtás (Neumann elvű számítógépeknél) alapértelmezés szerint soros szerkezetű, ami azt jelenti, hogy az utasítások végrehajtása, egymás után, a tárolás sorrendjében történik. Ha ezt a szerkezetet meg akarjuk változtatni, akkor két programozási módszer állé rendelkezésünkre:

a., Elágazás
- Az elágazás olyan szegmense a programnak, amelyben a következő utasítás valamilyen logikai döntés eredményének függvényében alakul ki.

b., Ciklus
- A ciklusok a programok olyan szerkezeti egységei, amelynek segítségével egy többször végrehajtandó utasítás ismételt felírása helyettesíthető.


Utasítás végrehajtás folyamata:
-------------------------------

1., Az utasítás beolvasása a processzorba 

2., A beolvasott utasítás dekódolása

3., Az operandusok beolvasása

4., A művelet végrehajtása

5., Az eredmény tárolása

6., A következő utasítás címének meghatározása


A processzor számítási teljesítményét meghatározó tényezők
----------------------------------------------------------

- A számítógépek digitális áramkörei ciklusokban működnek ütemezve valamilyen frekvenciával. A ciklikus működés az órajelfrekvencia megfelelően választott étékének használatával érhető el. --> Erre azért van szükség, mert a logikai érékeket reprezentáló feszültség szintek csak bizonyos idő után állnak be a bináris 0-nak vagy 1-nek megfelelő értékre.

- A sebességet úgy tudjuk meghatározni, hogy megmérjük a feladat elvégzésére fordított időt.

Képlet: F = C * T * U 

Ahol: F- egy feladat végrehajtásához szükséges idő
C- egy utasításra eső átlagos ciklusszám
T- egy ciklushoz szükséges idő
U- egy feladat végrehajtásához szükséges utasítás szám.

A számítógép teljesítményének mérése
------------------------------------

- Az egységnyi idő alatt végrehajtott utasítások átlagos száma. 
Mértékegységek:

- MIPS (Million Instructions Per Second - millió művelet/másodperc)

- MFLOPS (Million of Floating Point Operations per Second - másodpercenként végrehajtott lebegőpontos utasítások száma)

2012. október 8., hétfő

ÁRG 11K - Hálózatok


===> NAT (Network Address Translation) hálózati cím fordítás

- A NAT általában routerek és egyéb aktív eszközök kiegészítő szolgáltatása.
Feladata a belső hálózatról érkező csomagok tovább küldése a saját nevében. Így minden belső Hostról küldött csomag a ROUTER nevében továbbítódik. A visszaérkező csomagokat a saját szolgáltatási nyilvántartásából kikeresi és továbbítja a belső hálózatra a megfelelő host felé. Azok a csomagok, amelyek nem célzott belső hostokra érkeznek, nem kerülnek továbbítsra, így egyfajta tűzfalként is funkcionál. A NAT-olás hátránya lehet az, hogyha egy hostot akarunk elérni többen egy belsőhálózaton belül, és a host úgyn. Flooding-nak veszi, így tiltja a kapcsolatot.

- A NAT-olás komoly számítási kapacitás igényel az aktíveszközöktől, így egy olyan belső hálózatnál, ahol sok host van, szükség van komoly és nagy teljesítményű aktív eszközökre.

Megjegyzés: Ha az eszközök nem bírják a nagyobb terhelést a NAT számítás kapacitás miatt, akkor érdemes lehet több NAT eszközt illetve egyéb server szolgáltatást (proxy) iktatni a hálózatba.

Proxy szolgáltatás (port: 8080)
-------------------------------

- Általános működés, weboldalak kiszolgálása tekintetében:

- Egy belső hálózatban minden belső hostról lekért weboldalt eltárol, és a következő belső host azonos weblapra érkező lekérését már ő szolgálja ki. Ezzel gyorsítja a webes szolgáltatások működését, és részben tehermentesíti az Internet kapcsolatot. Használatával elkerülhető bizonyos esetekben a Flooding.


- A NAT-olás protokoll független, csak ip csomagok továbbításában vesz részt, így minden ip feletti protokollt képes üzemeltetni.

Port forwarding
---------------

- Minden protokollnak meg van a saját általánosan használt portja illetve portszáma. A hálózati forgalomban továbbított adatok a megfelelő portokon keresztül kommunikálnak, attól függően, hogy milyen szolgáltatást szeretnénk elérni.

Példa: 

- Kliens oldalon fut egy levelező program (pl.: Outlook, Thunderbird, stb.)
- Be van állítva egy pop3 kiszolgáló. pl.: mail.xyz.hu
- A levelező kliens lekéri a leveleket pop3-on keresztül.

--> elindul egy kérés a DNS server felé (router kérdezi a szolgáltató DNS serverét az 53-as porton keresztül)
--> megkapja a válszt, hogy milyen ip tarozik a mail.xyz.hu hosthoz.
-->elindul egy lekérés 110 -es portra a mail.xyz.hu IP címére irányulva

(Példa: a mail.xyz.hu levelező server egy server farmon van, ahol rajta kívül még sok más server van elhelyezve, előttük egy aktív tűzfal -> nagy teljesítményű router van.)

--> a serverfarmon lévő router kap egy kérést a 110-es portra, amit "forward"-ol a megfelelő címre. ->mail.xyz.hu server 110-es portjára.

HA más a célport, akkor semmilyen extra művelet nincs, csak az utolós eszköz (jelen esetben a serverfarm router-e, tartalmaz egy portforwarding konfigurációt, amiben meg van határozva, hogy a 110-es portra érkező kéréseket milyen portra továbbítson.)

- DMZ - hasonló mint egy portforward, de itt szűrés nélkül minden beérkező kérést porttól függetlenül továbbít a router a configban megadott IP címre.

(Megjegyzés: Ha szeretnénk megtudni, hogy milyen portjai vannak nyitva egy HOST-nak, akkor valamilyen úgyn. Portscan alkalmazást ajánlott használni. Ilyen van például az Ubuntu Desktop-ban is, de sok ingyenes alkalmazás érhető el az Interneten is.)

2012. október 4., csütörtök

MT 21 - Információs rendszerek


LMS (Learning Management System)
--------------------------------

Az LMS-ek oktatási programok, események, távoktatási programok adminisztációjára, dokumentlálására, nyomon követésére alkalmasak. Támogatást nyújtanak továbbá az osztályozások nyilvántartásában, tananyagok összeállításában, kézbesítésében és közösség on-line kommunikációjában.

- Amit kezelnie kell egy ilyen alkalmazásnak:

- Közérdekű információk tárolása
- Felhasználói nyilvántartás
- Tanuló nyilvántartás
- Tanári nyilvántartás
--> Felhasználói hierarchia
- Képzések nyilvántartása
- Képzési programok nyilvántartása
- Tanmenet nyilvántartása
- E-napló
- Pénügyi nyilvántartás (tandíjak, elszámolások, számlák, normatíva)
- Dokumentum kezelés (pl. kipublikált tanulói kérvények, bejelentő lapok, stb.)
- Publikus tananyagok közzététele (jegyzetek)
- Vizsgák nyilvántartása (on-line jelentkezés, eredmények közzététele)
- Belső kommunikáció (belső levelezés, közösségi információ csere)
- Extra opció lehet egy távokatási rendszer integrálása.
- Órarend és terembeosztás hozzáférhetősége
- Aktuális események közzététele

2012. október 3., szerda

WP - Információs rendszerek tervezése


ECMS - Vállalaton belüli tartalomkezelő rendszer
------------------------------------------------
- Ez a rendszer egy szervet működéséhez kapcsolódó akták, adatok és feljegyzések rendszerezésére és tárolására szolgál. Általában valamilyen on-line formában jelenik meg, ebből következik, hogy távolról is adminisztrálható.

!!! Ez nem = a DMS-el, ami a Document Management System - azaz dokumentum kezelő rendszer. !!!

- Feladata a különböző forrásokból származó, különböző formátumú adatok egységesítése és publikussá tétele.

- A rendszer feldata az információ megosztás segítségével az ügyvitel támogatása.

- Alkalmasnak kell lennie arra, hogy közérdekű adatokat gyorsan hozzáférhetővé tegyen. A közzétett adatokban gyorsan lehessen keresni.

- Gondoskodni kell arról, hogy folyamatában bővíthetőek legyenek az adatok. (módosíthatóak, illetve törölhetőek, utóbbit csak komolyan indokolt esetben, sőt a módosítások időpontját, naplószerűen érdemes rögzíteni.)

- A ritkán változó dokumentumok, szerződések, szabályzatok, belső hírlevelek, aktualitások összefogását is ez a rendszer végzi.

- Extra opció lehet egy úgyn. iktatási rendszer integrációja, mert általában a szervezeti feljegyzések eltűnnek, nincsenek archiválva, így a napi ügyviteli folyamatok nehezen követhetőek. A megszokott ügyviteli rendtől való eltérés, dokumentálás nélkül rendszertelenné és követhetetlenné válik.

- Fontos lépés a tervezésben  megfelelő felhasználói hierarchia kialakítás. Itt átgondolt jogosultság kezelésről van szó, valamint felhasználó kontrollról is egyben.

DMS (Document Management System) - dokumentum kezelő rendszer
-------------------------------------------------------------

- A DMS feladata egy úgyn. elektronikus irattár létrehozása és kezelése.
- A DMS-nek támogatnia kell az akták bevezetését, tárolását, és könnyen kereshetőségét.
- Fontos feladat az archiválás és a dokumentumok lejáratuk szerinti törlése is.
- Egy ilyen rendszer esetében fizikailag file-okról, könyvtárakról és komplett adatbázisokról beszélünk.
- Elnagyoltan nevezhetjük egyfajta archiváló rendszernek is.

- Keresés tervezés DMS szinten: kell egy külön úgyn. index adatbázis, ami nem az adatokat tárolja, hanem az adatok nevét, egyéb azonosítóját és a rendszerben elfoglalt helyét. Minden keresés ebben az adatbázisban zajlik, és a megkapott adatok alapján a felhasználó célirányosan jut el az adott fizikailag jelenlévő file-hoz vagy könyvtárhoz.

==> nagyobb adatmennyiség esetében igen költséges lenne csoportosítani egy tárolóra az összes adatot, így tervezéskor mérlegelni kell egy esetleges nagy teljesítményű hálózat esetén az adatok eredeti helyükön tartását és egy központi kereső mechanizmus kidolgozását.

- DMS tervezésnél, csak úgy mint minden más esetben, fontos feladat a biztosnági mentés kidolgozása, és az archiválás szabályainak meghatározása.

- Fontos lépés a tervezésben  megfelelő felhasználói hierarchia kialakítás. Itt átgondolt jogosultság kezelésről van szó, valamint felhasználó kontrollról is egyben.

MCMS (Mobile CMS)
-----------------

- Az MCM a tárolt adattartalomból adatokat illetve szolgáltatásokat nyújt különböző mobileszközök számára.

- Általában nagy számú kliens csatlakozás van egyszerre, és ezek a kliensek általában folyamatos kapcsolattal kérik le az adatokat.

- Egy ilyen rendszer tervezésekor ügyelni kell a Front-End megfelelő tervezésére:

- Webergonómia (gombok mérete-> érinthető legyen, kontraszt, akadálymentes legyen.)
- A kliens oldali terheléseket kerüljük
- Relatív méretek

Megjegyzés:
-----------

Webergonómia - a weboldal kényelmes és megszokott módon történő használatát hivatott megvalósítani.

Alapelv, ami alapján gondolkodni kell egy ergonómikus tervezésnél, az a felhasználók böngészési szokása és viselkedése.

- A felhasználó általában siet.
- A felhasználó nem olvas, inkább csak "átfut".
- Ha nem találja meg rögtön, amit keres, akkor visszalép, hiszen több ezer, vagy akár több millió találatot kapott az általa keresett kifejezésre.

 Tanácsok:
 ---------
- Helyezzünk el az oldalon szimbolikus ikonokat.
- Minden fontos objektumot oda tegyünk, ahová szokás. 
- !!! Ki kell alakítani egy vizuális hierarchiát az oldalon !!! -> Ehhez tudni kell, hogy hogyan "olvassák" az emerbek a weboldalt.
- Akadálymentes verzióban is elkészül. (Lehet nagyítani a betűket, lehet nagy kontraszt különbséges nézetre váltani. Ha captcha van az oldalon, akkor az felolvassa magát.)
- Egységes betűtípus.

MT 21 - Információs rendszerek


MCMS (Mobile CMS)
-----------------

- Tervezéskor figyelembe kell venni a a rengeteg kliens csatlakozást, aminél nem utolsó sorban fontos, hogy ezek a csatlakozások sok esetben állandóak. - > Sok és különböző felépítésű eszközt kell egyszerre kiszolgálni.

- A Front-End tervezésénél figyelembe kell venni, hogy a kapcsolat sebessége sok esetben kicsi, és több méretű és formájú kijelzőn keresztül kapcsolódnak a rendszerhez kliensek. -> Gyors átvitelhez elegendhetetelen az egyszerű grafikus megjelenés, valmint csak az információ átadására való törekedés. Fontos az. ún. relatív front-end méret, ami lehetősvé teszi, hogy különböző méretekben is kihasználjuk a maximális helyet.

- Fontos még az ergonómikus megjelenés, különös tekintettel az akadálymentes megjelenési forma. (Ikonok, gombok mérete, navigáció mérete, kontraszt)

- Tervezéskor kerülni kell a kliens oldali terheléseket és olyan kiegészítő alkalmazások használatát, ami plusz terhelést, illetve akár plusz telepítési folyamatot igényel kliens oldalon.


2012. október 2., kedd

Flash - MT11 MT21


Flash
-----

Motion Guide
------------

- Irányított motion tween.
- Képes a modellezés útvonalát egy általunk megadott vektor szerint manipulálni.
- Motion Tween alapú technika, ezért minden Motion Tween tulajdonság felhasználható benne.

- Előfeltétele, hogy a Motion tween modellezési objektuma szimbólum legyen.

Számítógép architektúrák - SZSZK 21 - CPU

Számítógép-rendszerek részletes elemzése
----------------------------------------

CPU (Central Processing Unit)
-----------------------------

CPU felépítése:

- Vezérlő egység (CU - Control Unit)
- Aritmetikai és logika egység (ALU - Arithmetic Logical Unit)
- Regiszterkészlet
- Buszillesztő egység (BIU - Bus Interface Unit)
- Címszámító és védelmi egység (AU - Address Unit)
- Belső gyorsítótár (Cache)

ALU
---
A CPU-n belül az utasításkódokban előírt számítási és logikai műveleteket

végzi el. Ezek a műveletek általában bináris műveletek.

Működéséhez a következő 2 regiszter mindig kell:

    - AC (Accumulator Register) - művelet végrehajtáskor az adatok

átmenti tárolására szolgál
    - FLAG regiszter - állapotjelző regiszter -> a végrehajtott

utasítás következtében megváltozott állapotok kerülnek bitenként

kódolásra

CU
--
Feladata a programban lévő utasítások alapján a teljes számítógép

részegységeinek irányítása, összehangolása

Műveleti vezérlés:

    - huzalozott logika - minden utasításhoz külön digitális áramkör

tartozik
    - mikroprogramozott mód - itt a műveletek végrehajtásakor

létrejön egy mikroprogram, aminek segítségével hajtjuk végre az

utasításokat

Regiszterkészlet
----------------

- A regiszterek gyors írható és olvasható munkatárak. A belső

sínrendszeren keresztül tartanak kapcsolatot a processzor más részeivel.

A regiszterkészlet processzor függő.

- A regiszterek a felhasználói programok szempontjából 3 kategóriába

sorolhatók:
    1., Rendszerregiszterek - ezek a felhasználói programok számára

nem elérhetőek
    2., Speciális célú regiszterek - felhasználói programokban csak

meghatározott utasításokban szerepelnek
    3., Általános célú regiszterek - felhasználói programokban

korlátozás nélkül használhatóak

- A regiszterek fajtái:
    - Akkumulátor regiszter (AC) - műveletek eredményeit tárolja
    - Utasítás regiszter (IR) - a vezérlő egységhez tartozik, ebben

tárolódik a memóriából kiolvasott utasítás
    - Utasításszámláló regiszter - (PC) - A soron következő utasítás

címét tárolja.
    - Bázis (cím) regiszter (BR) - Nem minden processzorban

használják. Az operandusok címzéséhez felhasznált regiszter.
    - Indexregiszter - Ez sincs minden processzrorban, és ez is az

operandusok címzéséhez használatos, különösen adatsorok feldolgozásánál.
    - Állapotregiszterek, vezérlőregiszterek - Vezérlő és ellenőrző

jeleket tárolnak.

Buszillesztő egység (BIU)
-------------------------
- A BIU biztosítja a processzor kapcsolódását a külső sínrendszerhez.

Címszámító és védelmi egység
----------------------------
- Feladata a programutasításokban található címek leképzése a főtár

fizikai címeire és a tároló - védelmi - hibák felismerése.

Belső sínrendszer
-----------------
- A CPU-n belüli adatforgalmat lebonyolító áramkörök összessége.

Belső gyorsítótár (Cache)
-------------------------
- A főtárból kiolvasott utasítások és adatok átmeneti tárolására szolgál.



A processzorok üzemmódjai
-------------------------
- Azért van szükség különböző üzemmódokra, mert:

    - védelmi szempont, biztonságos futás
    - meg kell különböztetni az operációs rendszer és a felhasználói

programok futását
    - korábbi programok, régebbi processzorokra írt programok

futtatásának lehetősége (kompatibilitás)
- Megkülönböztetünk a processzorok felhasználása esetében úgyn.

supervisor és user állapotokat, melyek elkülönítik egymástól az operációs

rendszehez tartozó programokat és a felhasználói programokat. A

legmagasabb jog a privilegizált supervisor üzemmód.

Példaként nézzünk Pentium processzor üzemmódokat:

1., Valós üzemmód - ilyenkor "régi" processzorként működik, úgy, mint egy

8086-os (példa: 32 bit-es regisztereknek csak 8 bit-et enged, stb.)

2., Védett üzemmód - ez multitasking 32 bit-es üzemmód ebben a módban a

legnagyobb a teljesítmény

3., Védett valós üzemmód - amiben a processzor a 8086-os processzor módot

csak egy task-ban emulálja. (Pl.: ilyen eset, amikor egy régi DOS

program, window ablakban fut.)

4., Rendszermenedzselő mód - (SMM -System Management Mode), ami független

az op.rendszertől és a programoktól és egyben ez a mód a processzor

energiatakarékos módja.


A processzorok utasításkészlete
-------------------------------

- Az utasítás végrehajtás a gépi kódú utasításokra vonatkozik, amelyk a processzor számára közvetlenül értelmezhetőek. A gépi utasítások csak egyszerű műveletek illetve lépések előrására alkalmasak. Ilyenek például: összeadás, kivonás, memóriahely kiolvasása, írása.

- Az utasítások nem önmagukban álló teendők, hanem műveletek a hozzájuk tartozó adatokkal. Az adatok meghatározásának módját hívjuk címzési módnak.

==> egy adott processzortípus által értelmezhető műveletek kódolt csoportját hívjuk a processzorok utasításkészletének. Ezek típustól függően eltérőek, de gyakorlatban csaknem ugyanazokat a műveleteket végzik el.

Megjegyzés: gépi kódok (1011 1000 0011 ...), gépi kód közeli 1. genrációs programozási nyelvekkel lehet legkönyebben előállítani a gép kódokat. Ilyen nyelv például az Assembly.