Avatar of mkavici

by

Fiziksel Portlar

11/10/2010 in Yazılım

Port nedir?
Turkce karsiligi liman anlamina gelir.Bilgisayar dünyasindan ayri olarak gemilerin yük indirip bindirdigi bölgedir. Donanimcilar dünyasinda ise özellikle donanimcilar diyorum buna dikkat edin portlar aynen limanin yaptigi görevi yapar. Yani belirli bir bilgiyi alir ve gerekli yere götürür.
Kisaca portun tanimina kablo girisleri diyebiliriz ama güzel bir açiklama gerekirse su sekilde tanimlayabiliriz; Dis birimlerle yani klavye, fare, monitör, yazici, tarayici ve bunun gibi araçlarla bilgisayar arasinda ki bilgi alisverisini saglar.

Bunu nasil yapar?
Dis birimler için özel olarak tasarlanmis portlar vasitasiyla bilgisayara baglanir ve onunla haberlesir.Portlar donanimcilar için kablo girisi demektir ama elektrige baglanan degil bilgisayara baglanan kablo girisleridir.

Yazilimci dünyasinda port kavrami daha degisiktir; Yine ayni sekilde belli bir limandan bilgiyi alir belli bir limana götürür.Ama yazilim dünyasinda port herhangi bir fiziksel baglanti yeri degil, mantiksal bir baglanma seklidir.Hardware degil software olan pop3 (110. port)(Post Office Protocol Ver3) ve www-http (80. port)(World Wide Web) gibi portlar bizim suan islemicegimiz yazimlicilarla ilgili ayri bir konudur.

Donanim alani içerisine giren portlara devam edelim;
Port tiplerine girmeden önce kablo girislerinde bulunan igneye benzeyen küçük demir parçaciklarina pin dendigini söylemek istiyorum. Pinler belirli bir görevi yapmayi saglayan giris ve çikislardir.Yani o küçük demir parçaciklarindan biri veriyi algilayabilir gönderebilir silebilir grup belirleyebilir ve bunun gibi daha birçok islemi yerine getirebilir.

Seri Port: 9 ve 25 pinden olusan iki çesidi vardir.Bir seferde bilgisayara sadece bir bit yollayabilir.Gunumuzde yerini daha hizli olan USB ile PS/2 portlarina birakmaya baslamistir fakat seri porta baglanabilen aygitlar evlerimizde mevcut oldugu ve onlari çöpe atamicagimiz için hala kullanilmaktadir.Bu porta fare, modem gibi cihazlar baglanabilinir. yavas ama stabil yani saglam ve temiz bir veri yoludur. Seri baglanti için en fazla 10 metre uzunlukta kablolar kullanilabilinir.

Paralel Port: Seri porta göre hizli olmasina ragmen ayni stabiliteyi saglayamaz. Çogunlukla yazici baglantisi için kulanilan bir porttur. Bu baglanti noktasina ayni zamanda LPT(LinePrinTer) de denmektedir. Bu portun bir pini bir seferde 8 bit veri gönderebilir. DB25 isimli portu kullanir.DB25 ismindeki 25 rakami kablo girisindeki pin sayisini ifade etmektedir. Yazici ve tarayici bu portu kullanmaktadir.Gunumzde paralel port seri port gibi yerini USB ye birakmaya baslamistir. dogabilecek sorunlardan kaçinmak için uzunluklari 5 metreyi asan kablolar kullanilmamalidir. Hedef aygit sadece PC tarafindan gönderilen komutlari islemekle kalmiyor PC’ ye kendisi de veri gönderebiliyor.

PS/2 portlari: Klavye ve fare için kullanilirlar. Kablo girisleri fare ve klavye için farkli renktedirler.Bunlara takilacak donanim girisleride farkli renkleri içerirler; böylece karisiklik önlenir.PS/2 Portlari IBM tarafindan gelistirilmistir. Yeni çikan bazi anakartlar ps/2 yi desteklemiyor onun yerine usb kullaniyorlar.

SCSI portu (Small Computer System Interface): SCSI portun islevi çok sayida aygiti arka arkaya bilgisayara baglamak olarak özetlenebilir, bu sayi en fazla 15 dir. Sabit diskleri, CD-ROM aygitlarini ve diger çevresel birimleri destekler.SCSI anakart üzerinde standart olarak gelmez.Bunun için ekstra bir SCSI karti gerekmektedir. Kablo uzunlugu 3 metreyi geçmemelidir.

RJ-11 portu (Telefon hatti portu): Modem için kullandiginiz porttur.Içerisinde 6 tane ince kablo bulunmaktadir.Modem kablolarin uzunlugu 50 metreyi bulabilir.

RJ-45 portu (Ethernet karti portu): Network baglantisi için kullanilir. Içerisinde 8 tane kablo için kanallar bulunmaktadir. Kablo boyu 100 metreye kadar cikabilir.

USB portu: Hemen hemen her aygit için kullanilabilen bir baglanti çesididir. Oldukça hizli veri transferi saglayan bir baglanti standardidir. Saniyede 480 Mbps(57 Mega byte/saniye) veri transfer edebiliyor ve tek bir porttan 127 tane cihaz baglanabiliyor.2001 yilinda çesitli büyük firmalar tarafindan USB 2.0 gelistirildi.USB 2.0 diger eski USB versiyonlariyla uyumludur.USB kablosunun içinden 4 tane ince hat geçmektedir. Bunlar veri alip vermeye güç saglamaya ve sinyal üretmeye yarar. USB kablosunun uzunlugu en fazla 5 metre olabilir.

IEEE 1394 Firewire portu: IEEE 1394 portu hizli veri transferi yapabilen bir baglanti standardidir. Günümüzde hala popüler olarak laptoplarda ve digital cameralarda kullanilir.

Oyun portu: Ses karti üzerindeki dördüncü baglanti noktasi oyun portuna aittir. Buraya joystick, gameped ve direksiyon gibi oyun kumandalari baglanabiliyor. Kablo uzunlugu 5 metreyi asmamalidir.

Ses karti konnektörleri: Ses kartlari artik bazi anakartlarda tümlesik olarak gelmektedir(Onboard).Sesin giris ve çikislari bu konnektörler vasitasiyla saglanmaktadir. Bunlarin renkleride standarttir.Speaker için yesil, mikrofon için pembe ve ses girisi için de mavidir.Bazi ses kartlarinda Tv sesi icin siyah renkli line in konnektörü de bulunmaktadir.

Vega Portu:Her bilgisayar VGA portuna sahiptir. VGA kablosu her iki ucunda da PC ve monitör baglantilarina uygun 15 pinlik uçlara sahiptir. VGA sinyalinin aksi durumlarda epey zayiflayacagindan hareketle, resim kalitesinin de düsmemesi için kablo uzunlugu üç metreyi asmamalidir.

Sorunları Çözme
Sistemde bulunan port ayarlari kontrol edilmelidir; önceden eklenen portlarin yeni eklenilen portlarla karisiklik yaratmadigina emin olunmasi gerkir. Örnegin dahili modemi COM 2 olarak ayarlanmis ve yeni scsi karti üzerindeki COM 2′ yi kullanilmaz hale getirmeyi unutmus olabilirsiniz.

Fiziksel port ayarlari dogrulanir. Isletim sistemindeki port ayarlari dogruysa, kartin fiziksel olarak o ayarlara uyacak sekilde ayarlanmis oldugundan emin olunmasi gerekir.
Kablo baglantilari kontrol edilmelidir. harici baglantilarin güvenli oldugundan emin olunmasi gerekir.
Çevre birimin gereksinimleri kontrol edilmelidir. Porta baglanilan aygit özel ayarlar gerektirebilir. Aygitin el kitabi kontrol edilmeli ve port ayarlari ona göre yapilmalidir.
Bios uzerindeki Chipset Feature setup içindeki özellikler kontrol edilmeli.Disable olan seçenekler enable yapilmalidir.Bir okulda çalisiyorsaniz ögrenciler USB portunu bios üzerinden kullanilmaz hale getirmis olabilir.

Iki Bilgisayarin Birbirine Baglanmasi
Ethernet kartiniz yoksa iki bilgisayari birbirine baglayip bilgi aktarmak için paralel(LPT) yada seri (COM) portlar veya USB kullanilabilir.Fakat USB pahali ve karmasik bir çözüm oldugu için simdilik seri ve paralel portlari kullanmak daha uygun. Bu is için hazir yapilmis kablolar da var ama kullanici bu isi kendisi yapabilir. Disi portlarda numaralar sagdan sola 1 den baslayarak büyür, erkeklerde ise tersi olur.

PARALEL PORT ILE:
5 metreyi geçmeyen en az 10 telli
kablo, iki adet 25 pin erkek paralel port konnektörü ile yanda yazili uçlari diger konnektöre baglanir. Eger tel çok ise yazili olmayan numaralar kendi numarasina baglanir.
Konnektör1 Konnektör2
2 15
3 13
4 12
5 10
6 11
7 2
8 3
9 4
10 5
11 6

SERI PORT ILE:
15 metreyi geçmeyen en az 3 telli
kablo, iki adet 9 pin disi seri port konnektörü ile yanda yazili uçlar diger konnektöre baglanir.
Kablolar bilgisayara bagladiktan sonra portlardan veri gönderen ve alan bir program kullanarak diger bilgisayar ile baglantiya geçilebilir.
Konnektör1 Konnektör2
2 3
3 2
5 5

Portlarla neler yapilabilinir?
Klavyenizden bir tusa bastiginizda kablonun içinden 1 ve 0 sifir rakamlari akmaya baslar.Bunun görünürde bir anlami yok ama bu rakamlar bilgisayara ulastiginda ulasan bir ise bilgisayar bunu gücü açiyorum sifir ise gücü kapatiyorum seklinde yorumlar.Yani 1 rakami +5 Volt 0 rakami 0 Volttur.Bu gücü kullarak düsük elektrik gerektiren cihazlari yada ev esyalarini çalistirabiliriz.Piyasada USB portunu kullanan kahve isiticilar, çakmaklar, pil sarj aletleri bulunmaktadir. Bizde portlari kullanarak yeni ürünler yaratabilir yada bilgisayarimizi daha çekici bir hale getirebiliriz.
Elektronikçiden alinicak LEDlerle (Light emitting diode) yada yanip sönen isiklarda deniyor pinleri birbirine baglayarak isik gösterileri olusturabilirsiniz.Bunu yapmak için C++ delphi gibi programlama dillerine ihtiyaciniz var.Portlar sayesinde bilgisayariniza degisik isiklandirmalar yapabilirsiniz. Örnek olarak pascal da hazirlanmis asagidaki kodlari inceleminizi tavsiye ederim.

Uses wincrt;
Var
Port1 : integer;
a, b : byte;
begin
clrscr;
repeat
a :=1 ;
for b:= 1 to 6 do begin
port [$378]:=a;
a:=a*2;
delay (2000);
end;
until keypressed;
end.

Bu program çalistirildiginda paralel porta bagli 6 LED en sagdakinden baslamak üzere sirasiyla yanacaktir.Burda önemli olan programin 10. satirindaki port $378 komutudur.$378 ifadesi portu temsil eder.Bu rakami degistirerek ve birkaç komut ekleyerek benzer programlar yaratarabilir CD-Rom hard-disk klavye gibi cihazlari kontrol edebiliriz.

Ayni sekilde yine portlari kullanan ama piyasada bulunmayan çesitli ürünler yaratabilirsiniz. Örnek olarak bir bilgisayarin portuna baglicagimiz veri kaydedici bir cihaz ile o makinada yapilan tüm islemleri izleyebilir yada müdahale edebiliriz.Makinaniza en iyi firewall lari yükleseniz bile bilgisayarin içini açip portlariniza bakmazsaniz bilgilerinizi kolayca çaldirabilirsiniz.
Teknik servisinizde çalisan bir elemanin yapilmasi çok kolay olan bu cihazi makinaniza yerlestirmesi takdirde kredi karti bilgilerinizden ösym numaraniza kadar herseyinizi çaldirabilirsiniz.Bu yöntem kumarhanelerde tek kollu makinalarda sikça kullanilir.

Asp ile port kontrolu
Bir applet kurulup fiziksel portlar kontrol edilebilinir. Ve bu asp yi hazirlayan kisi bilgisayar kullanicilarinin makinelerindeki çesitli bilgilere ulasabilir.
Visual basic, delphi gibi program dilleri ile bir dll yazarak bu apilere ulasacak bir kütüphane olusturur sonrada bunlari asp içinden çalistirarak port kontrolunu saglayabiliriz.
Birçok frewall ve virüs koruma programlarinda hatta explorer ayarlarinda bile appletleri çalistirma isimli seçenek bulunur.Ama eger appletleri çalistirmazsak internetten yeteri kadar zevk alamayabiliriz.Istemedigimiz kisilerin appletler vasitasi ile sistemimize girmesini önlemek için güvenmedigimiz sitelerde appletleri yada activex i çalistirma seçenegini isaretlemeliyiz.Eger explorer ayarlari ile oynamadiysaniz inernet explorer her bir applet yada activex çalisicagi zaman kullaniciyi uyarir.

Visual Basic’te port kontrolu Open komutu ile seri ve paralel iletisim saglanabilinir.
Bu komutu hatirlayalim;

Open “Dosya Adi” For ErisimModu As #DosyaNo
Örnek olarak: Open sayilar.txt For Output As #1

Buradaki dosya adi yerine seri port “COM1:” veya “COM2:”, yada paralel port “LPT1:” veya “LPT2:” kullanilabilinir.

Simdi Open komutu ile LPT2 portunu açalim ve Write# komutu ile bu porta bilgi gönderelim. Gönderdigimiz bilgiler eger LPT2 üzerinde printer varsa çikti alabiliriz.

Private Sub Form_Load()
Open "lpt2:" For Output As #1
Write #1, "Bu satirlar yazicidan cikicak"
Write #1, "Bu kod ile printer kablolarinizda bir sorun olup olmadigini"
Write #1, "kontrol edebilirsiniz"
Close #1
End Sub

Eger printerimiz LPT2 portuna bagliysa bu bilgiler yazicidan çikicaktir.Bu kod ile printerimizin fiziksel ayalarinda bir sorun olup olmadigini da denetlemis oluyoruz.

Bir baska örnekte bugünlerde çok moda olan dialer programlarinin benzeri birsey yaratabiliriz
COM2`ye baglanmis bir modem`e 2252442 nolu numarayi çevirmesini söyleyelim. Modeme bir numara çevirmesini söylemek için “ATDT” komutu kullanilir.

Private Sub Form_Load()
Open "com2:" For Binary As #1
Put #1, , "ATDT 2252442" & vbCr
Close #1
End Sub

Yazicaginiz degisik kodlar ile firewall ve virüs koruma programlari kolayca atlatilabilinir.

Ek bilgi: Yeni programlama dillerinde direkt porta atifta bulunarak degilde portun üzerinde takili olan cihaz kastedilerek kodlar düzenleniyor örnek olarak delphi de mciSendString(‘Set cdaudio door closed wait’, nil, 0, handle); komutu CD-Rom kapagini kapamaya yariyor

Leave a reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>