26-биттік адрестеу және IBM жүйесі мен ARM процессорларындағы қолданылуы
26-bit computing
26-биттік сандық жүйелер, IBM System/370 және ARM процессорларындағы жад адрестеуі туралы ақпарат. Жады көлемін ұлғайтудың қадамдары мен SEO оптимизациясы.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Компьютерлік архитектурада 26 биттік бүтін сандар, жад адрестері немесе басқа да дерек бірліктері 26 бит енімен келеді, сондықтан 67,108,863-қа дейінгі қолтаңбасыз мәндерді ұсынуға болады. 26 биттік жад адрестеуді қолдаған компьютер процессорларының екі мысалы: 1981 жылы ұсынылған екінші буын IBM System/370 негізгі компьютерлерінің (және одан кейінгі бірнеше модельдер) модельдері, олар 26 биттік физикалық адрестерге ие болған, бірақ бұрынғы модельдердегідей 24 биттік виртуалды адрестерді сақтаған, сондай-ақ ARM процессорларының бірінші буыны.
In computer architecture, 26 bit integers, memory addresses, or other data units are those that are 26 bits wide, and thus can represent unsigned values up to 67,108,863. Two examples of computer processors that featured 26 bit memory addressing are certain second generation IBM System/370 mainframe computer models introduced in 1981 (and several subsequent models), which had 26 bit physical addresses but had only the same 24 bit virtual addresses as earlier models, and the first generations of ARM processors.
IBM System/370 жүйесі
Деректерді өңдеу қажеттіліктері артып келе жатқанда, IBM және оның клиенттері үлкен жад көлемдерін тікелей шешуде қиындықтарға тап болды. Бұл қысқа мерзімдік "шұғыл" шешім ретінде аяқталды, IBM-нің System/370 модельдерінің екінші буынындағы 3033 және 3081 үлгілері 26 биттік нақты жад адрестеуін енгізді, бұл System/370 жүйесіне қосылатын физикалық жад көлемін бұрынғы 24 биттік шектеуден (16 МБ) 4 есеге арттырды. IBM 26 биттік адрестеуді "кеңейтілген нақты адрестеу" деп атады, және кейбір келесі модельдер де 26 биттік қолдауға ие болды. Алайда, 2 жыл өткен соң IBM өзінің System/370 XA модельдерімен физикалық және виртуалды адрестерді 31 битке дейін кеңейтіп, 31 биттік жад адрестеуін ұсынды, тіпті танымал 3081 моделін де XA стандартына жаңартуға болады. IBM модельдер қатарында қол жетімді жад адрестеудің соңғы деңгейі ретінде 26 биттің қысқа тарихы және виртуалды адрестер әлі де 24 битпен шектелгендіктен, 26 биттік режимді бағдарламалық қамтамасыз ету арқылы пайдалану мүмкіндігі шектеулі болды. 26 биттік режимді пайдаланған аз ғана клиенттер ақырында өз қолданбаларын 31 биттік адрестеуді қолдау үшін бейімдеді, ал IBM бірнеше жыл бойы 24 биттік, 26 биттік және 31 биттік режимдерді қолдайтын модельдерді шығарғаннан кейін 26 биттік режимді қолдауды тоқтатты. 26 биттік режим – System/360-тан тараған IBM мейнфреймдерінің қатарынан алынып тасталған жалғыз адрестеу режимі. Барлық басқа адрестеу режимдері, соның ішінде қазіргі 64 биттік режим, қазіргі модельдегі мейнфреймдерде қолдауға ие.
As data processing needs continued to grow, IBM and their customers faced challenges directly addressing larger memory sizes. In what ended up being a short term "emergency" solution, a pair of IBM's second wave of System/370 models, the 3033 and 3081, introduced 26 bit real memory addressing, increasing the System/370's amount of physical memory that could be attached by a factor of 4 from the previous 24 bit limit of 16 MB. IBM referred to 26 bit addressing as "extended real addressing," and some subsequent models also included 26 bit support. However, only 2 years later, IBM introduced 31 bit memory addressing, expanding both physical and virtual addresses to 31 bits, with its System/370 XA models, and even the popular 3081 was upgradeable to XA standard. Given 26 bit's brief history as the state of the art in memory addressing available in IBM's model range, and given that virtual addresses were still limited to 24 bits, software exploitation of 26 bit mode was limited. The few customers that exploited 26 bit mode eventually adjusted their applications to support 31 bit addressing, and IBM dropped support for 26 bit mode after several years producing models supporting 24 bit, 26 bit, and 31 bit modes. The 26 bit mode is the only addressing mode that IBM removed from its line of mainframe computers descended from the System/360. All the other addressing modes, including now 64 bit mode, are supported in current model mainframes.
Ертедегі ARM процессорлары
ARM процессор архитектурасында 26 бит – бастапқы ARM процессорларында қолданылған конструкцияны білдіреді, онда Бағдарлама санағышы (PC) және Процессордың күй тіркелімі (PSR) бір 32 биттік тіркелімге (R15) біріктірілді, күй белгілері жоғары 6 битті толтырды, ал Бағдарлама санағышы төменгі 26 битті пайдаланды. Шындығында, бағдарлама санағышы әрқашан сөзбен сәйкес келетіндіктен, ең төменгі екі бит әрқашан нөлге тең болды, бұл конструкторларға процессордың режимдік биттерін сақтау үшін осы екі битті қайта пайдалануға мүмкіндік берді. Рұқсат етілген төрт режим: USR26, SVC26, IRQ26, FIQ26. Бұл ARM архитектурасының кейінгі нұсқаларындағы 32 мүмкін режиммен салыстырылады, онда бағдарлама күйі бағдарлама санағышынан бөлінген. Бұл конструкция бағдарламаны тиімді орындауға мүмкіндік берді, өйткені Бағдарлама санағышы мен күй белгілерін бір операциямен сақтау және қалпына келтіруге болады. Бұл дәстүрлі конструкцияларға қарағанда кіші программаларды шақыру және үзілістерге жауап беру жылдамдығын арттырды, оларда кіші программаны шақыру немесе одан қайту кезінде екі тіркелімді жүктеу немесе сақтау қажет болатын. 32 биттік ALU және сөз ұзындығына қарамастан, ARM архитектурасының 1 және 2 нұсқаларына негізделген процессорларда тек 26 биттік PC және адрестік шина болды, сондықтан олар 64 Мбайт адрестелетін жадпен шектелді. Бұл сол кезде үлкен көлемдегі жад саналды, бірақ осы шектеуге байланысты кейінгі архитектуралар бастапқы 26 биттік конструкциядан алшақтаудың әртүрлі қадамдарын қамтыды. ARM архитектурасының 3-ші нұсқасы 32 биттік PC және жеке PSR, сондай-ақ 32 биттік адрестік шинаны енгізді, бұл 4 Гбайт жадты адрестеуге мүмкіндік берді. PC/PSR орналасуының өзгеруі бұрынғы архитектуралар үшін жазылған кодпен үйлесімсіздікке әкелді, сондықтан процессорда ескі PC/PSR комбинациясын қолданатын 26 биттік үйлесімділік режимі де болды. Процессор осы режимде 4 Гбайт жадты адрестеуге болатын, бірақ 0x3FFFFFC (64 МБ) адресінен жоғары ештеңе орындай алмады. Бұл режим Acorn Risc PC-де жұмыс істейтін RISC OS жүйесінде жаңа процессорларды пайдалану үшін қолданылды, сонымен бірге қолданыстағы бағдарламалық жасақтамамен үйлесімділікті сақтады. ARM архитектурасының 4-ші нұсқасы 26 биттік адрестеу режимдерін қолдауды міндетті емес етті, ал ARM архитектурасының 5-ші нұсқасынан бастап олар толығымен алынып тасталды.
In the ARM processor architecture, 26 bit refers to the design used in the original ARM processors where the Program Counter (PC) and Processor Status Register (PSR) were combined into one 32 bit register (R15), the status flags filling the high 6 bits and the Program Counter taking up the lower 26 bits. In fact, because the program counter is always word aligned the lowest two bits are always zero which allowed the designers to reuse these two bits to hold the processor's mode bits too. The four modes allowed were USR26, SVC26, IRQ26, FIQ26; contrast this with the 32 possible modes available when the program status was separated from the program counter in more recent ARM architectures. This design enabled more efficient program execution, as the Program Counter and status flags could be saved and restored with a single operation. This resulted in faster subroutine calls and interrupt response than traditional designs, which would have to do two register loads or saves when calling or returning from a subroutine. Despite having a 32 bit ALU and word length, processors based on ARM architecture version 1 and 2 had only a 26 bit PC and address bus, and were consequently limited to 64 MiB of addressable memory. This was still a vast amount of memory at the time, but because of this limitation, architectures since have included various steps away from the original 26 bit design. The ARM architecture version 3 introduced a 32 bit PC and separate PSR, as well as a 32 bit address bus, allowing 4 GiB of memory to be addressed. The change in the PC/PSR layout caused incompatibility with code written for previous architectures, so the processor also included a 26 bit compatibility mode which used the old PC/PSR combination. The processor could still address 4 GB in this mode, but could not execute anything above address 0x3FFFFFC (64 MB). This mode was used by RISC OS running on the Acorn Risc PC to utilise the new processors while retaining compatibility with existing software. ARM architecture version 4 made the support of the 26 bit addressing modes optional, and ARM architecture version 5 onwards has removed them entirely.