2013-03-12 19 views
6

Bellek eşlemli I/O, merkezi bellek (RAM) ile çevre birimleriyle iletişim kurmasını sağlayan bir tekniktir. Port eşleştirmeli I/O, dijital portlar üzerinden iletişim kurmak için portları (özel montaj talimatları ile) kullanır.Bellek eşleştirmeli I/O vs Port eşlemi I/O

Bir yöntemin diğerine göre avantajları nelerdir?

+2

En göndermeden önce SSS okumak için - Eğer 'don http://stackoverflow.com/faq eşlenen of Memory –

+1

avantajı IO olurdu Cihazlara yazmak için özel talimatlara ihtiyaç vardır. Bir hafıza yazmacısı gibi görünür, ancak bazı adresler belirli aygıt kümelerini eşler. Port eşlemeli G/Ç farklı bir sınıf talimatı kullanır. –

+1

Ayrı bir G/Ç veri yoluna sahip olmak, Intel işlemcilere özgüdür. Bu, 8 bitlik işlemcilerin ilk günlerine kadar uzanıyor. Otobüs tasarımlarının son derece basit olduğu ve 64 KB adres alanında bir delik açmanın zor olduğu yerler. Bu düşünceler bugün artık geçerli değil. –

cevap

11

Cthulhu belirtildiği gibi,

  • bellek haritası G/Ç
(aynı makine kodu/asm kullanılarak), normal belleğe yazma/okuma olarak I/O cihazı bağlantı noktalarına, aynı okuma/yazma sağlar

ama bir dezavantaj vardır: Eğer I/O cihazları (RAM tüm 4G erişmek mümkün olmayan 32 bit Windows'un düşünüyorum eşlenen hafızanıza için fiziksel bellek adres alanını kullanmak

  • a PC)

Bağlantı noktası eşlemeli G/Ç yöntemini kullanmanın bir avantajı, G/Ç aygıtlarınız için ayrı bir adres alanınız olması ve belleğe erişmek için tüm bellek adres aralığı kullanılabilir.

DÜZENLEME: İşte sorunuzun daha eksiksiz cevap: hardware ports to memory addresses

+0

Bkz. Http: // superuser. com/Q/703695/78897 – Pacerier