211service.com
64 bitu jautājums
Vai jūsu nākotnē būs 64 bitu dators?
Ņemot vērā visu to ažiotāžu, kas saistīta ar 64 bitu procesoriem, jūs droši vien pieņemat, ka mana atbilde būtu nepārprotama jā — un drīzumā arī! Taču atmetiet mārketinga ķibeles par tādām mikroshēmām kā AMD Athlon64; patiesībā 64 bitiem ir daudz mazāka nozīme, nekā jūs domājat datoru industrijā. Patiešām, ja vien neesat Macintosh lietotājs, jūs, iespējams, neiegādāsities 64 bitu datoru vēl desmit gadus — ja patiesībā tādu vispār iegādāsieties.
Pirmkārt, nedaudz fona. Lielākajā daļā mūsdienu galddatoru un klēpjdatoru procesori ir 32 bitu mikroshēmas. Lielākā daļa no tiem ir balstīti uz Intel neticami veiksmīgo IA32 arhitektūru, kas pazīstama arī kā x86 (kā 286, 386, 486). Visas Intel Celeron un Pentium iekārtas ir IA32, tāpat kā AMD Athlon mikroshēmas.
Bet pēkšņi 64 bitu mašīnām ir sava veida kešatmiņa. Divus gadus AMD pārdod procesorus, kas var vienlaikus darbināt gan 32 bitu, gan 64 bitu kodu; datori, kas izveidoti ar šīm mikroshēmām, var darbināt vai nu Linux, vai īpašu Windows XP 64 bitu versiju, ko Microsoft izlaida šī gada sākumā. Tikmēr Apple piegādā visus savus Power Mac datorus ar G5 mikroprocesoru, 64 bitu smadzenēm, ko radījis IBM. Un savā ziņā visas šīs galddatoru sistēmas ir kļuvušas priekšā: Nintendo veica 64 bitu pāreju 1996. gadā, kad tika piegādāta Nintendo64 spēļu konsole.
Lai saprastu, kāpēc tas viss ir svarīgi, vispirms ir jāsaprot, ka frāze 32 biti ir sava veida saīsinājums, ko izmanto datoru dizaineri. Šis skaitlis attiecas uz divām lietām datora arhitektūrā. Pirmkārt, tas norāda, cik bitu šie datori izmanto, kad tie norāda vietu atmiņā, kur tiek glabāta informācija. Otrkārt, tas norāda matemātikas veikšanai izmantoto reģistru lielumu mikroprocesorā. Katrs bits var būt 1 vai 0, tāpēc 32 bitus var izmantot, lai attēlotu 232 vai 4 294 967 296 dažādas vērtības. Tādējādi acīmredzamā atšķirība starp 32 bitu mašīnām un 64 bitu mašīnām ir tāda, ka 64 bitu sistēmas ir daudz lielākas mašīnas: tās var adresēt vairāk atmiņas, un tās spēj veikt matemātiku ar lielākiem skaitļiem.
Bet vairāk ne vienmēr nozīmē labāk — tas ir atkarīgs no tā, ko iegūstat vairāk.
Uz leju atmiņas joslu
Pāreja no 32 bitiem uz 64 bitiem ir vissvarīgākā, ja runa ir par šo datoru spēju risināt atmiņu. Programma, kas darbojas 32 bitu datorā, var viegli atgūt 4 gigabaitus atmiņas, 232 ir aptuveni 4,3 miljardi. No otras puses, programma, kas darbojas 64 bitu datorā, var uzrunāt 264 — tas ir 4 miljardi reiz 4 miljardi baitu, kas ir pārsteidzoši liels skaits. Vienkārši izpildiet skaitļus, un ir skaidrs, ka 64 bitu sistēmā ir daudz vairāk vietas. Bet šie divi fakti patiesībā rada lielu neskaidrību, kā mēs redzēsim.
IBM oriģinālajā personālajā datorā tika izmantots Intel 8088 mikroprocesors — smieklīga maza mikroshēma, kas bija piepildīta ar dīvainiem inženiertehniskiem kompromisiem. 8088 pamatā bija 16 bitu procesors: tam bija 16 bitu matemātikas reģistri, kas ļāva tam viegli attēlot skaitļus no 0 līdz 65 535 (vai no -32 768 līdz 32 767) un 16 bitu adrešu reģistrus, kas ļāva tam viegli sazināties ar 64 kilobaitu galveno atmiņu. Tagad ar 64 K nepietika, lai paveiktu daudz, pat 1981. gadā, kad dators pirmo reizi tika piegādāts, tāpēc 8088 bija segmentu reģistru komplekts, kas tika pārvietots pa kreisi par 4 bitiem un tika pievienots adrešu reģistrā, pirms atmiņas adreses tika faktiski izmantotas. lasīt vai rakstīt. Rezultātā 8088 varēja viegli piekļūt līdz vienam megabaitam atmiņai. 1981. gadā megabaits bija daudz RAM. Patiešām, toreizējo datoru dizaineri nevarēja iedomāties, ka parastam mājas vai biznesa lietotājam būs nepieciešams tik daudz atmiņas, nemaz nerunājot par to, ka viņš to varētu atļauties daudzus gadus. Tāpēc IBM dizaineri novilka līniju pāri datora atmiņas kartei un ievietoja video displeja atmiņu tieši augšējās daļas vidū, efektīvi ierobežojot sākotnējos datorus līdz ne vairāk kā 640 kilobaitiem RAM. Tā radās 640 K ierobežojums, ko IBM dators noteica savā DOS operētājsistēmā.
Dažus gadus vēlāk Intel ieviesa savu nākamo mikroprocesoru 80286. (80186 tā īsti nekad nav kļuvis par personālo datoru.) 286 bija IBM PC/AT pamatā. Tam bija emulācijas režīms (saukts par reālo režīmu), kas ļāva 286 darbināt tādu pašu programmatūru kā 8088, taču tam bija arī uzlabots, aizsargāts režīms, kas ļāva tam darboties ar līdz pat 16 megabaitiem RAM. Lielākā daļa šo iekārtu tika darbinātas reālajā režīmā, lai tās varētu darbināt Microsoft DOS un visas pārējās programmas, kas tika rakstītas oriģinālajam IBM personālajam datoram. Patiešām, 286 bija daudz populārāks 8088 programmatūras darbināšanai nekā 8088 jebkad, jo 286 bija daudz ātrāks. Kad jūs to sākat, ļoti maz 286 mikroshēmu faktiski tika palaisti aizsargātajā režīmā.
1985. gadā Intel ieviesa 80386 mikroshēmu — pirmo 32 bitu procesoru x86 saimē. Atkal šim mikroprocesoram bija tā saucamais reālais režīms, lai tas varētu darbināt DOS un pārējo 8088 programmatūras bāzi. Šīs iekārtas varēja riņķot ap oriģinālo 8088 — nevis tāpēc, ka tās bija 32 bitu mašīnas, bet gan tāpēc, ka tām bija ātrāks pulksteņa ātrums un izsmalcinātāks iekšējais dizains. Bija arī vairāki uzņēmumi, kas pārdeva DOS paplašinātājus, kas ļauj programmām, kas tiek ielādētas DOS, izmantot visu 32 bitu adrešu telpu. Šie paplašinātāji pārslēdza datoru 32 bitu režīmā matemātikas vajadzībām, bet atgrieza iekārtu 16 bitu režīmā ikreiz, kad programmai bija nepieciešams piekļūt datora cietajam diskam. Tomēr 32 bitu programmas, kas darbojas šajos 32 bitu procesoros, bija izņēmums, nevis likums.
Tikai tad, kad 32 bitu iekārtu skaits šajā jomā ievērojami pārsniedza 16 bitu mašīnas, Microsoft sāka piegādāt savu pirmo īsto 32 bitu operētājsistēmu - Windows 95. Līdz tam laikam Intel bija izlaidusi vēl divas x86 paaudzes. mašīnas — 80486 un Pentium. Jā, Microsoft varēja piegādāt 32 bitu operētājsistēmu gadus pirms Windows 95 piegādes. Taču, iespējams, tā būtu bijusi kļūda: kāpēc pārdot operētājsistēmu, kas nedarbosies lielākajā daļā datoru tirgū?
Visa šī vēsture pēkšņi atkal kļūst aktuāla, ņemot vērā nākamo lielo lēcienu personālo datoru arhitektūrā — pāreju no 32 bitu uz 64 bitu skaitļošanu. Taču, lai gan atmaksāšanās no 16 bitu adrešu telpas (vai 20 bitu, ja ņem vērā 8088 segmentēto arhitektūru) uz 32 bitiem bija milzīga, lielākā daļa datoru lietotāju tikko pamanīs pāreju no 32 bitiem uz 64 bitiem. Iemesls ir tāds, ka 32 biti patiesībā ir pietiekami lieli, lai atrisinātu lielāko daļu skaitļošanas uzdevumu — ne tikai šodienas, bet arī rītdienas.
Pāreja no 32 bitiem uz 64, visticamāk, neradīs tādu pašu ātruma vai iespēju kvantu lēcienu, kādu mēs panācām, pārejot no 16 bitiem uz 32. Jā, 64 biti adreses ir patiesi niecīgi, bet 32 biti nav nekas, par ko šķaudīties.
Mūsdienās ir maz lietojumprogrammu, kurām patiešām ir nepieciešams vairāk nekā 4 gigabaiti atmiņas. Ja tas, ko jūs darāt, ir tekstapstrāde, izklājlapas, e-pasts un tīmekļa pārlūkošana, 32 biti nodrošinās pietiekami daudz adrešu vietas iedomājamai nākotnei. Mans Windows galddators ir atmiņa, un tā Internet Explorer kopija parasti palielinās līdz 64 megabaitiem. Bet tā joprojām ir viena sešdesmit ceturtā daļa no iekārtas 4 gigabaitu atmiņas kartes izmēra. Es nevaru iedomāties, ka es varētu palaist tīmekļa pārlūkprogrammu, kurai būtu nepieciešama 4 gigabaitu atmiņas karte: būtu nepieciešamas gandrīz 10 stundas, lai tikai lejupielādētu tik daudz informācijas, izmantojot manu DSL līniju!
Jūs varētu domāt, ka vairākuzdevumu veikšana ar citām, līdzīgi lielizmēra lietojumprogrammām izraisītu arvien lielāku atmiņas spiedienu līdz tādam līmenim, ka dara uztraukties par adrešu telpas izmantošanu. Bet tas tā nav. Windows, Unix un citas modernās operētājsistēmas izmanto metodi, ko sauc par virtuālo atmiņu, lai katrai programmai piešķirtu savu izolēto atmiņas karti. 32 bitu datorā tas nozīmē, ka katrai palaitā programmai ir sava 4 gigabaitu virtuālā atmiņa, ar kuru var spēlēt. Tātad, lai gan viens darbojošas programmas gadījums nevar piekļūt vairāk par 4 gigabaitiem, 32 bitu iekārtai, kurā darbojas sistēma Windows XP ar 10 vai 20 gigabaitu atmiņu, nebūs problēmu koplietot šo atmiņu starp uzpūstu pārlūkprogrammu, uzpūstu Word kopiju. 2003, un uzpūsta Access kopija.
Šī 64 bitu adrešu telpa rada lielu atšķirību, ja vienai programmai vienlaikus ir jāpiekļūst vairāk nekā 4 gigabaitiem atmiņas. Piemēram, ja izmantojat daudznacionālas korporācijas datu noliktavu ar 10 terabaitu tiešsaistes krātuvi, jūsu datu bāzes serveris varētu gūt nopietnu labumu, ja atmiņā tiek saglabāti 10 vai 20 gigabaiti indeksa faili. Liela mēroga simulācija varētu arī gūt labumu, jo tajā ir daudz RAM, lai veiktu tādas darbības kā laikapstākļu modelēšana parīt.
Tā kā tādi uzņēmumi kā Dell piegādā mājas datorus ar 512 megabaitu operatīvo atmiņu un Windows XP datorus, kas regulāri izmanto 1,5 gigabaitu atmiņu, lai saglabātu visas savas programmas, tirgotāji, kuri izmanto 64 bitu skaitļošanu, sacīs, ka jums ir nepieciešama 64 bitu iekārta. lai pārvarētu strauji tuvojošos 4 gigabaitu ierobežojumu. Neticiet. Faktiski Dell jau pārdod 32 bitu datorus ar 8, 16 un 32 gigabaitu operatīvo atmiņu. Tirgotāji vēlas, lai jūs iegādātos 64 bitu iekārtas, jo šīs sistēmas maksā vairāk.
Otrs veids, kā 64 bitu mašīnas pārspēj mūsdienu 32 bitu sistēmas, ir matemātikas veikšana. Tā kā mūsdienu 32 bitu iekārtām ir procesori, kas var attēlot jebkuru veselu skaitli no 0 līdz 4 294 967 295 (tas ir 232-1), 64 bitu mašīna var attēlot veselus skaitļus no 0 līdz 18 446 744 073 709 551 415 ().
Vēlreiz jāatzīmē, ka spēja veikt matemātiku ar šiem milzīgajiem skaitļiem vienā instrukcijā var būt milzīga priekšrocība dažos zinātniskos lietojumos. Taču izrādās, ka lielākajai daļai ikdienas biroja uzdevumu 64 bitu veselo skaitļu matemātika nav tik noderīga. Iesācējiem tas ir tāpēc, ka mums jau ir iekārtas, kas var darboties 64 bitu režīmā: mūsdienu iekārtas to dara tikai ar speciālām peldošā komata apstrādes vienībām, vai arī tās dara to ar vairākām 32 bitu instrukcijām. Lielākajai daļai darbību īpaša 64 bitu matemātikas aparatūra vienkārši nav nepieciešama.
Jums nav jāpieņem mans vārds šajā jautājumā. Paskatieties uz citu 64 bitu arhitektūru vēsturi. Lai gan 64 biti ir jaunums x86 pasaulē, citi mikroprocesori pāreju uz 64 bitiem jau deviņdesmitajos gados. Alpha, MIPS64 un Sparc64 ir 64 bitu mašīnas. Tomēr lielākā daļa programmu, kas darbojas šajos datoros, faktiski ignorē katra skaitļa augšējos 32 bitus, jo šie cipari vienmēr ir 0.
Īstā 64 bitu peļņa: jaunāki modeļi
Visi šie argumenti pret 64 bitu iekārtām saplūst koka apstrādē, taču, apsēžoties pie Apple jaunā G5 datora: neatkarīgi no tā, vai rediģējat video vai vienkārši pārlūkojat tīmekli, iekārta jūtas ievērojami ātrāka nekā 32 bitu datorā. G4 brālēni. Tātad, ko dod?
Izņemot ievērojamo Intel Itanium procesoru, mūsdienu 64 bitu iekārtas parasti palaiž 32 bitu kodu ātrāk nekā to 32 bitu brālēni tā paša iemesla dēļ, ka 32 bitu Intel 80386 16 bitu kods darbojās ātrāk nekā 8088 un 80286. Iemesls ir tāds, ka 64 bitu CPU ir vienkārši modernākas ierīces. Šīs mikroshēmas ir izgatavotas, izmantojot progresīvākus silīcija procesus, tām ir augstāks pulksteņa ātrums un tajās ir vairāk tranzistoru. AMD Athlon64 un IBM G5 ir ne tikai plašāki reģistri: tiem ir arī vairāk funkcionālo vienību to silīcija smadzenēs. Šīs mikroshēmas veic labāku darbu, piemēram, vairāku instrukciju izpilde vienlaikus, nepareiza izpilde un atzaru prognozēšana. 64 bitu PowerMac G5, kas darbojas Apple Store, lielākoties darbojas ar 32 bitu kodu. Iekārtas iespaidīgo ātrumu nodrošina divu procesoru kombinācija, ātrāks pulksteņa ātrums, lielāka kešatmiņa un labāka atmiņas kopne.
Jā, AMD un IBM varēja ieviest to pašu tehnoloģiju jaunā 32 bitu dizainā. Taču mūsdienās jaunas mikroshēmas projektēšana maksā miljardus dolāru. 64 bitu procesoram var būt augstāka cena nekā 32 bitu centrālajam procesoram, tāpēc šo uzņēmumu interesēs ir savos 64 bitu produktos izmantot jaunākās un labākās tehnoloģijas.
Raugoties uz priekšu, 64 bitu skaitļošana patiešām iekarosies, jo 64 bitu mašīnas vienkārši veiks labāku darbu ar mūsdienu 32 bitu kodu nekā mūsdienu 32 bitu procesori. Taču tirgus varētu viegli attīstīties citā virzienā. Šie papildu 32 biti patērē daudz enerģijas, tāpēc uzņēmumi, kas veido CPU klēpjdatoriem un plaukstdatoriem, varētu vienkārši ielikt 64 bitu mašīnām izstrādātos trikus savās 32 bitu ierīcēs.
Tas pats ir noticis spēļu konsolēs. Lai gan pirms dažiem gadiem bija liels satraukums, kad Nintendo nolēma savai Nintendo 64 sistēmai izmantot 64 bitu R4300i procesoru, videospēļu spēlētājiem nebija nekādu labumu no papildu 32 bitu adreses vai matemātikas. R4300i tajā laikā bija ātra mikroshēma, jo tajā tika ieviestas daudzas citas modernas metodes, lai paātrinātu programmu izpildi. Tas būtu varējis nodrošināt tādu pašu veiktspējas līmeni, ja šie triki būtu piemēroti 32 bitu procesoram. Ātrumu nodrošināja triki, nevis biti.
128-bit Bound?
Pārdzīvojot lēcienu no 8 bitiem uz 16 bitiem, pēc tam no 16 uz 32 un tagad no 32 uz 64, ir tikai dabiski domāt, ka kaut kad tālā nākotnē mēs veiksim pāreju no 64 bitu uz 128 bitu sistēmām. Neaizturiet elpu.
Šeit ir svarīgi atcerēties, ka biti ir eksponenciāli. 32 bitu sistēma var adresēt 65 tūkstoši reizes vairāk atmiņas nekā 16 bitu sistēmai, savukārt 64 bitu sistēmai ir teorētiskā atmiņas adrešu telpa 4 miljardi reizes lielāks nekā 32 bitu sistēmā. Jūs faktiski varētu izveidot vienu atmiņas sistēmu, kurā ar mūsdienu aparatūru būtu 264 baiti, taču jums būtu jāizmanto vairāk nekā 200 miljoni cieto disku, no kuriem katrs satur 256 gigabaitus informācijas. Tas ir vairāk vietas, nekā 2003. gadā piegādāja visa pasaules cieto disku ražošanas nozare. Tātad, lai gan ir iespējams izveidot atmiņas sistēmu ar 264 baitu krātuvi šodien, jums, iespējams, būtu jāizmanto katrs dators pasaulē, kas ir savienots ar internetu. .
Lai gan ir iespējams iedomāties nākotni, kurā datori piekļūs 264 baitu datu bāzēm, ir grūti iedomāties vienu problēmu, kas prasītu, lai programmai būtu pieejams tik daudz atmiņas vienā adrešu telpā. Viens no iemesliem, kāpēc šādai neticami lielai sistēmai nav jēgas, ir tas, ka jūs neizveidotu šādu sistēmu ar vienu procesoru un vienu vienotu adrešu telpu: tā vietā jūs izmantotu miljoniem vai miljardiem apstrādes elementu, visiem ar pārklājošu atmiņu un atbildību. Tādā veidā, ja viens procesors vai atmiņas bloks neizdodas, pārējās sistēmas nemanāmi pārņems vadību.
Ņemot vērā šādus argumentus, ir diezgan nesaprātīgi iedomāties, ka jums būtu nepieciešami 2128 biti krātuves — ne mūsu dzīves laikā, ne neviena cilvēka dzīves laikā.
No otras puses, es varētu pilnīgi kļūdīties šajā jautājumā: 64 biti varētu būt tikai tas, kas paredzēts visa ķermeņa virtuālajai realitātei ar prāta satiekas-prāta pārveidošanas iespējām. Vai, visticamāk, tādi uzņēmumi kā Dell varētu izvēlēties sekot Apple piemēram un pārtraukt pārdot zemas klases mašīnas ar 32 bitu procesoriem, tā vietā paļaujoties uz 64 bitu iekārtu mārketinga ažiotāžu, lai attaisnotu augstākas peļņas normas.
Bet atcerieties, ka apakšā vienmēr ir vieta. Un tā kā 32 bitu mašīnas, visticamāk, noderēs vismaz desmit gadus uz priekšu, ja ne ilgāk, es būtu pārsteigts, redzot, ka Dell nodod šo tirgu citam uzņēmumam. Paskatieties uz Apple: lai gan visās PowerMac galddatoros, ko Apple pārdod, ir G5 procesori, uzņēmums joprojām izmanto G4 savos iMac, eMac un PowerBook datoros.
Personīgi es domāju, ka 32 bitu sistēmas būs ar mums vēl ilgi.