Kullanıcı:Onur Aslan/İşlemci

CPU veya İşlemci bilgisayar programının talimatlarını yerine getiren ve bilgisayarın fonksiyonlarını yerine getirmesini sağlayan, bilgisayar sistemindeki bir parçadır. Bu terim bilgisayar sektöründe 1960ların başında kullanılmaya başlanmıştır. CPU'ların tasarımı ve uygulaması ilk örneklerinden buyana değişmiş olsa da, temel yürütme işlevleri aynı kalmıştır.

İlk işlemciler bazen bir çok bilgisayar için, bazen sadece tek tür bilgisayarlar için özel olarak tasarlanmıştır. Bu şekilde belli bir uygulamayı yerine getirmeyi amaçlamış özel olarak gelişen işlemci tasarımı, bir veya birden fazla amacı yerine getirebilen çok üretimli işlemcilerin yapımına öncü olmuştur. Bu standartlaşma modası, Tümdevrelerin (Integrated Circuit) yaygınlaşmasıyla ortaya çıkan transistör anamakineleri ve minibilgisayarların ortaya çıkmasıyla başlamıştır. Tümdevre, nanometre bazında karmaşık işlemcilerin tasarlanması ve üretilmesini arttırmıştır. CPU'ların bu minyatürleştirme ve standartlaştırması, bilgisayar sistemlerinin limitli uygulamalarının çok çok ötesine geçerek, modern yaşamımızın vazgeçilmez bir parçası olan bir çok dijital aygıtın yaratılmasını sağlamıştır. Modern mikroişlemciler, otomobillerden, cep telefonlarına ve hatta çocukların oyuncaklarına kadar neredeyse heryerde görülmektedir.

İşlemcilerin Tarihi değiştir

 
EDVAC, ilk elektronik program depolayan bilgisayardan biridir.

ENIAC gibi bilgisayarlar, farklı işlevleri belli bir sıra ile yapmak için düzenlenmişlerdir ve bu makineler "sabit-programlı bilgisayarlar"dır. "İşlemci" terimi, genel olarak bir yazılımı (bilgisayar programı) çalıştıran aygıt olarak tanımlandığından beri, bu eski bilgisayarları, program tutan bir işlemci olarak adlandımak doğru olacaktır.

Bilgisayar programı fikri J. Presper Eckert ve John William Mauchly'nin ENIAC'ın da daha önce sunulmuştur fakat makinenin bitmesinden çok sonra ilk olarak dahil edilmiştir. 30 Haziran 1945'de, ENIAC'ın tamamlanmasından önce, matematikçi John von Neumann: "EDVAC'ın ilk taslak raporu"nu yayımlamıştır. Rapora göre, program-depolayan bir bilgisayarın eninde sonunda 1949 Ağustosunda tamamlanacağının iskeletini çizmiştir. EDVAC çeşitli durumlar için yapılmış bir dizi yönergeyi (veya işlemi) uygulamak üzere tasarlanmıştı. Bu yönergeler, yararlı programlarla birleşerek EDVAC üzerinde çalışabilirdi. Önemli olarak, EDVAC için yazılmış programlar yüksek hızlı bilgisayar belleği yerine, bilgisayar için fiziksel olarak yazılarak belirtiliyordu. Bu ENIAC'ın, özellikle yeni bir süreç hazırlarken tekrar yapılandırılmasının gerektiği çeşitli kısıtlamalarını ortaya çıkardı. John von Neumann'ın tasarımıyla, EDVAC'ın çalıştırabileceği program veya yazılım, basitçe bilgisayar belleğini değistirerek çalıştırıyordu.

John von Neumann, program-taşıyan bilgisayar olan EDVAC tasarımıyla en çok anılırken, Konrad Zuse gibi diğer kişiler benzer fikirleri önerdi ve uyguladı. Sözde Hardward Mark I'in Harvard mimarisi, EDVAC'tan önce tamamlanmış, ayrıca program'ı elektronik bellektense delikli şeritte depolamayı tasarlamıştı. John von Neumann'ın ve Hardward mimarisinin en önemli farkı, sonradan ayrılmış depolama ve işlemci talimatlarının işlenişi ve verinin aynı bellek alanını kullanmasıdır, önceki ikisi için aynı alanı kullanırken. Modern işlemciler genel olarak von Neumann'ın tasarımını kullanırken, Hardvard mimarisi de yaygın olarak görülmektedir.

Digital aygıt olduğundan işlemciler, farklı durumları belirleme ve bu durumları değiştirmek için çeşitli kısıtlamalara sahiptir. Transistörler, önceki ticari geliştirilirilmelerinde, genel olarak değiştirme unsuru olarak elektrik rölesi ve vacum tüpleri (termiyonik musluklar) kullanılılıyordu. Eskiye göre farklı hız avantajlarının olmasına rağmen, tamamen mekhanic tasarımlar çeşitli nedenlerden dolayı güvensizdi. Örneğin, mevcut direk sırasal mantık devrelerinin yapılması, ek donanımın eklenerek kontak sekmesi sorununun çıkmasına yol açıyordu.

EDVAC gibi tüplü bilgisayarlar, hata vermeden ortalama sekiz saat çalışabiliyordu, fakat Harvard Mark I gibi röle makineleri nadiren hata veriyordu. Sonuç olarak, tüp tabanlı işlemciler önemli ölçüde hızlı olmalarının getirdiği avantaj sayesinde, genelde ağır olmalarının ve güvenilirlik sorunlarının karşılanabilmesiyle baskındı. Önceki işlemciler günümüzdeki microelektronik tasarımlara göre çok daha düşük saat hızında çalışıyordu (bkz: saat hızı karşılaştırması). Bu zamanlarda saat sinyal frekansı 100 kHz ile 4MHz arasında yaygındı ve yapıldığı değiştirme aygıtına bağlı şekilde kısıtlıydı.

Ayrık transistörler ve Tümdevre İşlemcileri değiştir

 
DEC PDP-8/I'nın işlemci, ana bellek ve harici bus birimi orta ölçekli bütünleşik devrelerden oluşmaktadır.

İşlemci tasarımındaki karmaşıklığın artmasi, çeşitli teknolojilerin daha küçültülmesi ve daha güvenli elektronik aygıtların yapılmasına yol açmıştır. İlk ilerleme transistörün icadı ile olmuştur. Transistörlü işlemciler 1950 ve 1960'lı yıllarda, kocaman, güvensiz ve kırılgan vakum tüpleri ve elektrik rölelerinin yerini almıştır. Bu ilerlemeyle, karmaşık ve güvenli işlemciler ayrık parçalarını taşıyan bir veya birkaç tane üretilmiş devre kartları üzerine yapılmaktaydı.

Bu süreçte küçük alanda bir çok transistör üretim methodu populerlik kazandı. Tümleşik devre (IC), çok sayıda transistörün tek bir üretici-tabanlı die (tümleşik devre) veya "chip" üzerinde üretilmesini sağlıyordu. İlk başlarda sadece özel olmayan, NOR köprüsü gibi dijital devre elemanları IC'ler için küçültülmüştü. Bu tür "yapısal blok" tabanlı işlemciler genelde "küçük-oranlı birleştirme" (small-scale integration SSI) olarak anılmaktadır. Apollo guidane computer gibi bilgisayarlar içerisinde kullanılan SSI IC'ler, genellikler transistor sayaç numaralarını on ile çarpmaktadır. Tam bir işlemciyi SSI IC'ler olmadan üretmek için binlerce chip gerekmektedir fakat önceki ayrık transistör tasarımına oranla daha az yer ve güç harcamaktadır. Mikroelektronik teknolojisinin gelişmesiyle, IC'lere yerleştirilebilien transistör sayısı da artmıştır, böylece tam bir işlemci için gereken IC sayısı da düşmüştür. MSI ve LSI (orta ve geniş-oranlı birleştirme) IC'leri transistor sayısını yüze daha sonra da binlere katlamıştır.

1964 yılında IBM, aynı programı farklı hız ve performansta çalıştırabilen System/360 bilgisayar mimarisini geliştirmiştir. Bu zamanda özellikle elektronik bilgisayarlar diğerleriyle uyumsuzdu, hatta aynı firmanın ürettikleri bile. Bu gelişimi güçlendirmek için, IBM microprogram ("microcode"dan ziyade) konseptini uyguladı, ki hala modern işlemilerde geniş olarak kullanılmaktadır. System/360 mimarisi anamakine bilgisayarlarında o çok popülerdi ve IBM zSeries gibi moder bilgisayarlarda kullanılan bir miras bıraktı. Aynı yıl (1964), Dijital Ekipman Firması (Digital Equipment Corporation DEC), bilimsel ve araştırma marketlerine yönelik güçlü bir bilgisayar olan PDP-8'i çıkardı. DEC daha sonra inanılmaz derece popüler olan SSI IC'ler ile üretilmiş ve sonunda LSI parçalarıyla çalışır hale gelen PDP-11'i üretti. SSI ve MSI ile üretilmiş önceki sürümlerine göre boş bir yapısı olan ve ilk LSI bileşenli PDP-11 sadece dört LSI bütünleşik devreden oluşan bir işlemciye sahipti.

Transistör tabanlı bilgisayarlar öncekilere göre bariz avantajlara sahipti. Uygulamasının yanında güvenilirliği ve düşük güç tüketimi, tüp ve röleye nazaran dahah hızlı değiştirme zamanıyla daha hızlı çalışmasını sağlıyordu. Güveniliriği ve değiştirme unsurlarının artan hızı sağolsun (ki bu transistörün özelliğine bağlıydı), işlemci saat hızları onlarca megahertze yükseldi. Ek olarak, ayrık transistör ve IC işlemcilerinin kullanımının yoğun olarak kullanıldığı sürede, yeni yüksek performanslı tasarım olan SIMD (Single Instruction Multiple Data - Birçok veri ile Tek Talimat)lı, vektör işlemciler gözükmeye başladı. Bu eski deneysel tasarımlar, daha sonra Cray şirketi gibi süperbilgisayarlarda kullanım için özelleştirildi.

Mikroişlemciler değiştir

 
Intel 8742'deki bütünleşik devre.
 
Seramik PGA kaplı Intel 80486DX2 mikroişlemcisi.

Mikroişlemci kavramı ilk olarak 1970lerde, işlemci tasarımını ve uygulamasını önemli ölçüde etkilemiştir. İlk bu zamanlarda görülen ve ilk ticari mikroişlemci (Intel 4004), 1970 yılında çıkmış ve ilk olarak 1974 yılında (Intel 8080) geniş olarak kullanım bulmuştur. Bu sınıftaki işlemciler neredeyse tüm diğer işlemci uygulmalarının yaptığı işlerin üstesinden gelebilmektedir. Zamanın anabilgisayar ve minibilgisayar üreticileri eski bilgisayar mimarilerini yükseltmek için kendi tümleşik devrelerini geliştirme programları başlatmışlardır ve sonunda eski donanım ve yazılımı destekleyen geriye uyumlu talimat seti destekli mikroişlemci üretimine başlamışlardır. Geçmiş ve sonrasından gelen ve günümüzde kullanılan kişisel bilgisayarlardaki (PC) işlemci tanımı neredeyse mikroişlemcilerle birleşmiştir.

Önceki jenerasyon işlemciler, ayrık parçalar ve bir küçük bütünleşik devrenin bir bir kartlara bağlanmasından oluşmaktaydı. Diğer bir taraftan mikroişlemciler, çok küçük ve genelde bir tane bütünleşik devreden oluşuyordu. CPU'nun toplamda kapladığı alanın düşmesiyle, kapıların kapladığı alanda düştüğünden küçük bir devrenin çok hızlı değişim yapmasına olanak sağlandı. Bu senkronize mikroişlemcilerin saat hızını onlarca megahertzden gigahertzlere çıkarttı. Ek olarak, tümleşik devrelerin üzerine yapılabilecek küçük transistör sayısının artmasıyla, karmaşık ve çok sayıda transistöre sahip işlemcilerin sayısı gittikçe arttı. Bu geniş olarak Moore kanununda anlatıldığı gibi CPU'ların (ve diğer IC'lerin) karmaşıklığının zaman içinde büyümesi gözlenmiştir.

İşlemcilerin; karmaşıklığının, boyutunun, imalatının ve genel halinin geçtiğimiz 60 yıl içinde inanılmaz ölçüde değişmesine karşın, temel tasarımı ve yaptığı iş çok da fazla değişmemiştir. Neredeyse tüm yaygın işlemciler, von Neumann'ın tanımladığı program-depolayan makinelere benzemektedir. Daha önce de bahsedildiği gibi Moore'un kanunu, devre üzerindeki artan transistör teknolojisine dayanarak doğruluğunu korumaktadır.

Çalışma değiştir

Bir çok işlemcinin temel olarak çalışması, fiziksel durumlarından aldıkları yapıya göre, bir program tarafından çağrılan bir dizi talimatı çalıştırmaktan geçer. Program bir tür bilgisayar belleğinde tutulan bir dizi sayıyı ifade etmektedir. Neredeyse tüm işlemcilerin uyguladığı dört aşama vardır: alma, çözme, çalıştırma ve tekrar yazma.

 
Hayli popüler 8-bit MOS 6502 microişlemcisi.

İlk adım alma, program belleğinden talimatı (bir veya bir dizi sayı ile belirtilir) almaya yarar. Program belleğindeki yer programın şimdiki yerini tutan program sayacı (Program Counter, PC) tarafından belirlenir. Bir talimat alındıktan sonra, program sayacı alınan talimatın uzunluğu kadar bellek boyutunda artar. Az da olsa alınacak talimatın yavaş bellekten gelmesi, işlemcinin talimatı beklerken asılı kalmasına neden olmaktadır. Bu durum modern işlemicilerde cache ve pipeline mimarileri ile geniş olarak adreslenmektedir.

Bellekten alınan talimat işlemciye ne yapmasını gerektiğini söylemektedir. Çözme adımında, talimat parçalara ayrılarak işlemcinin çalışacağı bölüme yollanır. Numerik talimat, işlemcinin talimat mimarisine (instruction set architecture ISA) göre yorumlanır. Nadiren, talimat içerisindeki opcode denilen bir grup numara, hangi eylemin yapılacağını belirler. Geri kalan kısım için ise genelde bu talimat için gerekli diğer bilgileri barındırır, örneğin toplama işlemi için değer gibi. Bu değerler sabit bir değer olabileceği gibi (gerçek değeriyle kullanılırlar), bir değere yön tutan bir kayıtçı veya bazı adresleri tutan bir bellek adresi olabilir. Eski tasarımlarda, işlemi değişemeyen donanımlar için talimat çözme görevini üstleniyordu. Fakat daha soyut ve karışık işlemci ve ISA'larda, bir mikroprogram işlemcinin yapılandırılması için işlemci sinyallerini dönüştürmektedir. Bu microprogram bazen CPU üretildikten sonra bile tekrar düzenlenip yazılabilmektedir.

Alınma ve çözme adımlarından sonra çalıştırma adımı uygulanır. Bu adımda, işlemi yerine getirebilmek için işlemcinin çeşitli parçaları bağlanmıştır. Eğer, örneğin bir toplama eylemi istenmişse aritmetik mantık birimi (arithmetic logic unit ALU)a girdi ve çıktı birimlerine bağlanacaktır. Girdiler toplanacak sayıları ve çıktı da toplamı taşıyacaktır. ALU devresel olarak basit aritmetik ve mantıksal işlemleri yapabilmektedir (toplama ve bit düzeyinde işlemler gibi). Eğer toplama işleminin sonucu işlemcinin başedebildiğinden çok fazla ise, aritmetik taşma bayrağı, bayrak taşıyıcısında tutulacaktır.

Son adım olan tekrar yazma, basitçe bellekte yapılan işlemin sonucunu "tekrar yazar". Devam eden başka bir talimatın tekrar ulaşabilmesi için, çok nadir olarak sonuç işlemi işlemcinin bir kayıtçısına yazılır. Diğer durumda sonuç yavaş yazılabilir fakat ana bellek ucuz ve büyüktür. Bazı tip talimatlar sonuç üretmek yerine program sayacında değişiklik yapmaktadır. Bunlara genellikle "zıplama" denmektedir ve görevleri döngüler gibi, koşulsal program çalıştırması (eğer bir koşullu zıplama yapıldıysa) ve programlardaki fonksiyonlardır. Bir çok talimat ayrıca "bayrak" kayıtçısındaki sayıların durumunu da değiştirebilir. Bu bayraklar, taşma durumunda programın nasıl davranacağını belirlemede kullanılır. Örneğin bir "karşılaştırma" talimatı iki sayıyı kıyaslar ve bunlardan hangisinin büyük olduğunu büyüktür bayrağına belirler. Bu bayrak daha sonra bir zıplama talimatıyla programın akışının belirlemede kullanılır.

Talimatın çalıştırılması ve sonuç olan verinin tekrar yazımının ardından, tüm işlem artan program sayacının belirlediği gelecek-sıradaki talimatın alınmasıyla tekrarlanır. Eğer tamamlanmış talimat bir zıplama ise, program sayacı zıplanacak olan yerin adresi olarak değiştirilecek ve program normal olarak çalışmaya devam edecektir. Burada anlatılandan daha karmaşık işlemcilerde, birden fazla talimat alınıp, çözülür ve aynı anda çalıştırılabilir. Bu bölüm genellikle bir çok elektronik aygıtta kullanılan (genelde bunlara mikrokontrolcü denilmektedir) basit cpularda, "Classic RISC pipeline" olarak adlandırılmaktadır.

Tasarım ve Yapım değiştir

Sayı aralığı değiştir

İşlemci numaraları, işlemcinin temel fonksiyonlarını yerine getirirken kullanacağı sayıları etkiler ve tasarımcının tercihine bağlıdır. Eski bilgisayarlar sayıları içlerinde depolamak için yaygın olarak ondalık sayı sistemini (on tabanında) kullanıyordu. Bazıları üçlük gibi egzotik sayı sistemlerini kullanmıştır. Neredeyse tüm modern işlemciler sayıları ikilik (binary) olarak kullanmaktadır ve işlemcilerin bu değerleri "yüksek" veya "düşük" voltaja denk gelmektedir.

İşlemcininin ifade ettiği sayı, işlemcinin sayı genişliği ve hassasiyetine bağlıdır. Bu durumda binary işlemcilerinde bit, işlemcinin uğraştığı en önemli sayıdır. Bitlerden oluşan sayılara sayılsal değerler olarak kullanıldığında daha çok "kelime boyutu", "bit genişliği" veya "sayı hassasiyeti" denilmektedir. Bu sayılar mimari farkını ve birbirine benzeyen aynı işlemcilerin farklılığını doğurmaktadır. Örneğin 8-bitlik bir işlemci sekiz binary sayısı (her biri iki değer alabilen) ile sunulur ki bu da 2 üzeri 8 veya 256 sayı tutabilir. Sonuç olarak, donanımdaki sayı aralığı işlemci üzerinde çalışan yazılımın kullanacağı sayıları limitlemektedir.

Sayı aralığı ayrıca işlemcinin ne kadar bellek alanı adresleyebileceği (kullanabileceği) sayısını da etkilemektedir. Örneğin, eğer 32 bit bir binary işlemcisi, her bir bellek adresini bir sekizlik (8 bit) ile tutacağından, işlemcinin maksimum adresleyebileceği adres sayısı 2 üzeri 32 veya 4 GiB'tır. Bu işlemcinin adres boşluğuna en basit bakış açısıdır ve bir çok tasarım işlemcinin izin verdiği sayı aralığında bellek alanı adreslemektense, sayfalama gibi karmaşık adresleme metodlarını kullanmaktadır.

Yüksek seviye sayı aralığı daha fazla sayı ile uğraşmak için daha fazla yapı ve bunu sonucunda daha fazla karmaşıklık, boyut, güç kullanımı ve masraf gerektirmektedir. Yaygın olmasa da, yüksek sayı aralığında bulunan (16, 32, 64 hatta 128 bit) bazı modern uygulamalar 4 veya 8 mikroişlemcilerde de bulunmaktadır. Basit mikrodenetleyiciler genelde ucuzdur, az güç tüketir az ısınır ve elektronik aygıtların istemlerini karşılayabilirler. Fakat yüksek seviye son kullanıcı uygulamalarında daha fazla aralığın getirmiş olduğu nimetleri (az da olsa daha fazla adres boşluğu için) kullanmak için daha fazla tercih edilir. İşlemciler, düşük ve yüksek bit aralıklarının avantajını kazanmak için farklı bit genişliklerini aygıtın farklı yerlerinde kullanmaktadır. Örneğin, IBM System/370 birincil olarak 32 bit kullanmasına karşın virgüllü sayı hassasiyetini arttırmak için 128 bit aralık kullanmıştır. Daha sonra geliştirilen bir çok işlemci, özellikle genel amaçlı kullanımın hedeflendiği ve sayısal ve virgüllü sayıların kapatisesinin gerektiği durumlarda benzer şekilde karışık bit genişliği tasarımlarını kullanmıştır.

Saat hızı değiştir

Bir çok işlemci ve aslında bir çok mantıksal elektronik aygıt doğal olarak senkronizedir. Bu nedenle, senkronize sinyalleri uygulamak için tasarlanmışlardır. Saat sinyali olarak bilinen bu sinyal genelde periodik dalgaların formunu almaktadır. İşlemcinin bir çok devresinde dolaşan sinyallerin maksimum zamanının hesaplanmasında, tasarımcılar saat sinyalinin doğru bir dilimini seçerler.

Bu dilim, en kötü durumdaki sinyalin taşınmasında geçen süreden fazla olmalıdır. İşlemci tasarlanırken verinin "duvarlara" çarpış hızı, en kötü durumdaki saat hızından daha yüksek bir değer olarak ayarlanır.

Mimari iyileştirmeleri tek başına tüm senkronize işlemcinin tekrar yazmalarını çözmez. Örneğin, bir saat sinyali diğer bir elektriksel sinyal ile kesintiye uğrayabilir. Yüksek saat hızları karmaşık işlemcilerin sinyali birden fazla adıma senkronize taşınmasını zorlaştırmaktadır. Bu olay tüm modern işlemcilerde, sinyalin kesitiye uğraması halinde aynı sinyalin tekrar yollanmasıyla çözülmektedir. Saat hızlarının artmasının getirdiği diğer bir sorun ise işlemcinin ısınma problemidir. Genelde saat hızını değiştirirken işlemci daha fazla güç tüketecektir. Bu yüzden saat hızı arttırımları, aşırı ısınma nedeniyle işlemcilerde daha iyi soğutma çözümleri bulma yönüne gitmiştir.

İstenmeyen bileşenleri kapatarak saat hızı arttırımını sağlayan kullanılan bir method ise saat kapısıdır (clock gating). Fakat bu, özellikle uygulamasının zor olduğundan düşük güçte çalışan işlemcilerde nadiren uygulanır. Saat kapısının kullanıldığı en önemli işlemci dizaynı IBM'in PowerPC tabanlı Xbox360'dır. Oyun konsolunun güç tüketimini azatlmak için gelişmiş bir saat kapısı kullanılmıştır.

Performans değiştir

Performans veya hız işlemcinin saat hızı ve saat sinyali başına uygulayacağı talimat (Instructions Per Clock, IPC) ve saniyede uyguladığı talimata (Instructions Per Second, IPS). Belirlenmiş bir çok IPS değeri, sanal talimatların bir sıra ile çalıştırıması sonucu elde edilmiş olup, işlemcinin "peak" çalıştırma oranlarını vermektedir. Gerçek uygulamaların talimat işlemleri bu değerlere göre daha fazla olabilir. Bellek hiyerarşisi performansı büyük ölçüde etkilemektedir ve MIPS (saniyedeki milyon talimat) hesaplanmasında rol oynamaktadır. Bu nedenlerden dolayı, MIPS ve IPC gibi değerlerin hesaplanmasında SPECint şirketi tarafından geliştirilmiş standartlar mevcuttur.

Bilgisayarların performansı, birden fazla işlemcinin (ki bunlara çekirdek denmektedir) tek bir devrede kullanılacak şekilde tasarlanarak, çok çekirdekli işlemcilerin oluşmasıyla ve bunların kullanımı ile artmıştır. Temelde çift çekirdek bir işlemcinin, tek çekirdek bir işlemciden iki kat güçlü olması beklenir. Fakat pratikte, sadece tek çekirdek üzerine yazılmış uygulamaların kullanımı nedeniyle, performans artışı sadece yüzde elli civarında olmaktadır.

32-bit Intel İşlemci Ailesi değiştir

32-bit Intel işlemci ailesi (IA-32), masaüstü ve server bilgisayarlarında en yaygın kullanılan işlemcidir. Microsoft Windows dan diğer popüler işletim sistemileri olan Linux ve BSD getirileri gibi UNIX tabanlı işletim sistemleri bu platformda çalışır.

IA-32 işlemcilerinin yıllar içinde getirdiği avantajlar artsa da, bir çok özelliği genelde aynıdır. Bu bölümde bahsedilen özellikler belli bir IA-32 işlemcisine daha iyi program yazmayı sağlayacak bilgileri size verecektir.

Intel işlemcileri değiştir

Tabiki Intel IA-32 işlemcilerinin ana üreticisidir. Günümüzde kullanılan bilgisayar sistemlerininin çoğunda Pentium tabanlı işlemciler kullanılmıştır. Bu işlemciler devrim niteliği taşıyan Intel 80486 işlemcisinin donanım benzerliğiyle üretilmiştir.

Günümüzde işyerlerinden okullara ve evlere bir çok Pentium işlemci kullanılmıştır. Sadece bir işlemcinin özelliğini kullanarak assembly dili ile yapacağınız bir uygulama, uygulamanızın sadece o işlemcide çalışmasının getirdiği limit yüzünden, market pazarınızı etkileyecektir.

Bu bölümde çalışma bilgisayarları ve sunucularda en yaygın kullanılan işlemcilerin ana özelliklerini göreceğiz.

Pentium işlemci ailesi değiştir

Günümüzde kullanılan işlemciler Pentium işlemcisi tabanlıdır. Pentium ilk olarak 1993 yılında 80486 işlemcisinin yerine gelecek şekilde çıkarılmıştır. Pemtium işlemcisi ilk olarak çift çalıştırma yönüne sahip işlemciydi ve ilk tam olarak 32-bit adres bus'ı kullanan işlemciydi.

P6 işlemci ailesi değiştir

P6 işlemcileri ilk olarak 1995 yılında Pentium Pro işlemcisi ile çıkmıştır. Orijinal Pentium işlemcisine göre tamamen yeni bir mimariye sahiptir. P6 ailesi ilk supersayısal mikro mimariye sahiptir ki bu alınmış (fetch) talimatların çok kez çalıştırılmasına olanak sağlamaktadır.

Pentium MMX ve Pentium II işlemcileri, P6 ailesinin bir parçasıdır ve MMX teknolojisini kullanan ilk işlemcidir ve ayrıca düşük güç tüketim durumları ilk olarak bu işlemcide kullanılmıştır. Bu özellik güç tasarrufu sağlayarak, dizüstü aygıtlarda ideal bir seçim haline gelmiştir.

Pentium III işlemclsi SSE teknolojisinin kullanan ilk işlemcidir ve programcılara karmaşık virgüllü sayı aritmetiğini hızlı ve kolayca yapmalarını sağlamıştır.

Pentium 4 işlemci ailesi değiştir

Pentium 4 ilk olarak 2000 yılında çıkmıştır ve mikroişlemci tasarımında yeni bir moda başlatmıştır. Pentium 4 Intel NetBurst mimarisinin kullanarak, talimat uygulamada inanılmaz derece hız kazanmıştır.

Pentium 4 işlemcisi SSE teknolojisinin daha geliştirilmiş hali olan SSE3 desteklemektedir ve virgüllü sayı hesaplamalarında yüksek hız sağlamaktadır.

Pentium Xeon işlemci ailesi değiştir

2001 yılında Intel server uygulamaları için Pentium Xeon işlemcisini çıkarmıştır. MMX, SSE, SSE2 ve SSE3 desteklemektedir.

Intel olmayan işlemciler değiştir

IA-32 platformu Intel'inmiş gibi düşünülse de bu platforma ait bir çok Intel olmayan işlemci mevcuttur.

AMD işlemcileri değiştir

Günümüzde Intel'in en büyük rakibi AMD'dir. AMD her bir Intel Pentium işlemcisine eşdeğer bir işlemci üretmiştir.

Cyrix işlemcileri değiştir

Cyrix şirketi yıllardır yeni işlemci üretmese de, IA-32 işlemcileri hala günümüzde çeşitli bilgisayarlar ve az-güçlü serverlarda görülmektedir. Cyrix işlemcilerini hala çeşitli alanlarda kullanmak mümkündür.

Cyrix işlemcilerinin önemi, Intel'in bir çok işlemcisine farklı bir bakış açısıyla üretilmiş olmalarıdır.