/*****************************************************************************
							http://fei.trtkal.net (c) 2010 Trtkal

			_____________________ ___________ ____  __.   _____   .____
			\__    ___/\______   \\__    ___/|    |/ _|  /  _  \  |    |
				|    |    |       _/  |    |   |      <   /  /_\  \ |    | 
				|    |    |    |   \  |    |   |    |  \ /    |    \|    |___
				|____|    |____|_  /  |____|   |____|__ \\____|__  /|_______ \
												 \/                    \/        \/         \/

	IOSYS - poslední cviko

	Vypracování by: Trtkal

*****************************************************************************/

převod virtuální na fyzickou adresu:

0x00008C2E
4 KiB = 4096 B = 2^12 = 16^3 (2^4 = 16 | 4×3 = 12) - číslo vyjádříme v 12 cifrách
kolik je offset a kolik zbývá na 
4 cifry tvoří offset...
8 je index do stránkové tabulky... čísluje se od nuly, hledáme 9 položku (vychází z nějakého obrázku, co promítal)

C2E

V stránkové tabulce si přečteme číslo rámce, to vezmeme: 0x4F8E3 - určuje počáteční fyzickou adresu, připočítáme 3 nuly - první adresa v rámci 0x4F8E3000
následující rámec má 0x4F8E4000
výsledek: 0x4F8E3C2E

64KiB = 65535 = 2^16 = 16^4
adresa rozdělena: 0x0|8 C2E

256B = 2^8 = 16^2
0x0|8C|2E

Segmentace
 v segmentu je počáteční adresa celá!, délka segmentu
 
 ofset 16b - najdeme adresu, nikoli číslo
 musíme vzít i délku.. porovnat s ofsetem, pokud bude délka větší - jedná se o neplatný odkaz
 délka segmentu > ofset - platný odkaz
 
 k adrese přičteme délku ofsetu
 
0x0|8C|23
	|	segment			|	limit/velikost segmentu
0	|	0x01350210	|	0x9000

porovnat 9000 s 8C2E - platná adresa
0x01350210
+	 0x08C23
----------
0x1358E3E - fyzická adresa

------------------------------------------------------------------------------------------------------------------
12|34h
			|	LE	|	BE
100h	|	34	|	12
101h	|	12	| 34

network by order
	nezajímá nás, jaký ve skutečnosti je...
	převádíme z LE a BE do NBO
host by order
	převádí z network by order zpět do BE nebo LE

Převod portu (pozná si architekturu - přenositelný prpogram):
	htons(); - shortint (host to net)
	ntohs(); - shorint (net to host)
	htonl(); - long
	ntohl(); - long

Sockety:
	sockaddr_in {
		short int sin_family; // rodina adres - IPv4
		unsigned short sin_port; //port
		struct sockaddr_in sa; //struktura adresy
	}
