Ubuntu66.ru — новости, уроки, помощь, поддержка.
Архитектура компьютера (англ. Computer architecture) — структура вычислительной машины, определяющая проведение обработки информации и принципы взаимодействия технических средств и программного обеспечения.
Оперативная память компьютера (ОЗУ, RAM). Сокращенно оперативную память компьютера называют ОЗУ (оперативное запоминающее устройство) или RAM (random access memory — память с произвольным доступом).
Что такое разрядность? Разрядность – способность одновременно обрабатывать какое-то количество битов.
Все системы Linux существуют в двух вариантах – 32-битные и 64-битные.
Архитектурные различия между 32 и 64-битными версиями Linux, разумеется, есть.
Самые главные особенности и отличия, которые непосредственно касаются пользователя и с которыми приходится сталкиваться:
1. Максимальный объем оперативной памяти (ОЗУ).
2. Разрядность операционной системы (32 или 64-bit).
3. Разрядность процессора.
Максимальный объем оперативной памяти.
32-битная операционная система может использовать, «видеть» не более 4 ГБ оперативной памяти. Это самое главное отличие, и самое существенное. Если в вашем компьютере оперативная память (ОЗУ) — 2 ГБ, то 32-битная операционная система работает с таким объемом нормально.
64-битная операционная система может работать с гораздо бОльшими объемами памяти – до 192 ГБ.
Если вы на компьютере с 4 ГБ ОЗУ будете работать под управлением 32-битной ОС, то она просто не увидит такой объем. Все, что она сможет использовать – это примерно 3.5 ГБ из 4 ГБ. Остальной объем она не может предоставить для работающих программ. Разумеется, если вы установите в компьютер с 8 ГБ ОЗУ, скажем, и при этом будете оставаться на 32-битной системе, то она так же не увидит более 3.5 ГБ из всего установленного объема и оставшиеся 4.5 ГБ останутся просто неиспользованными.
Какими особенностями обладает 64-битная система?
Визуально – никакими. Т.е. внешне – это обычная ОС, ничем не выделяющаяся от 32-битного варианта.
Технически – небольшие различия есть. Первое, собственно, что 64-битная ОС «видит» большие объемы памяти и умеет с ними работать. Второе – она позволяет запускать 64-битные приложения (32-битная — нет).
Соответственно, чтобы иметь возможность установить 64-битную Linux, ваш процессор должен поддерживать 64-битные инструкции (иначе вы даже не сможете начать установку 64-битной Linux). Называться эти инструкции могут по-разному: у Intel – IA64, у AMD – AMD64. Убедиться, что ваш процессор поддерживает нужные инструкции можно с помощью специальной терминальной команды — free -m, которая определяет объём оперативной памяти (ОЗУ) вашего компьютера.
Если вы новичок в Linux и не знаете архитектуру вашего компьютера, установите на диск CD/DVD или флешку желаемый дистрибутив Linux 32-bit (потому что система 32-bit загрузится в любом случае), загрузите его в live-режиме, откройте из системного меню программу терминал скопируйте и выполните команду (нажмите Enter):
Как видно на снимке, после выполнения команды в терминале на моём компьютере, в разделе Mem (Memory — Память) отобразилось total (общее, всего) — 4038 МБ ОЗУ или если перевести в гигабайты (1 ГБ=1024МБ), это около 4ГБ оперативной памяти, которой обладает мой компьютер. А это значит, что я могу устанавливать на свой компьютер, как 32-битные, так и 64-битные системы Linux.
Если у вас после выполнения команды определилось 2ГБ и менее, то установить на свой компьютер вы можете только 32-битные системы.
Надеюсь теперь вы сможете правильно выбрать архитектуру ОС Linux для установки на вашем компьютере.
Ссылка на источник compizomania
14-06-2015.
Источник
Какой максимальный объем оперативной памяти я могу использовать на конкретном оборудовании
У меня ноутбук Asus U31SD с процессором i5-2430M . На сайте Asus говорится, что максимальный объем оперативной памяти составляет 8 ГБ, а в Intel говорят, что мой процессор поддерживает 16 ГБ. Какой максимальный объем оперативной памяти я могу использовать в этой системе под Ubuntu?
На самом деле это ограничение между вашим оборудованием (поддержка памяти материнской платы и количеством слотов в ней) и версией Ubuntu (32-битная, 32-битная + PAE, x32ABI, 64-битная)
Если у вас есть материнская плата, которая поддерживает максимум 4 ГБ, не имеет значения, используете ли вы 32-битную, 32-битную PAE или 64-битную версию, поскольку аппаратный лимит будет равен 4 ГБ.
Но если вы покупаете материнскую плату, которая поддерживает больший объем памяти, вы можете поиграть с версиями Ubuntu, которые имеют следующий максимальный поддерживаемый объем памяти:
Ubuntu 32 Bit — 4 ГБ оперативной памяти
Ubuntu 32-битная + PAE (расширение физического адреса) — 64 ГБ ОЗУ
Ubuntu x32ABI — 4 ГБ ОЗУ (это для 32-битной архитектуры, модифицированной с помощью 64-битных улучшений, работающих на 64-битном оборудовании. Пока недоступно.)
Ubuntu 64 Bit — много! (Фактически 2 ^ 64), но из-за аппаратных ограничений и компьютеров реального мира ограничение составляет около 1 ТБ (1024 ГБ ОЗУ)
Поэтому вопрос об ограничении памяти следует использовать, когда вы используете более 4 ГБ ОЗУ. В этом случае вам понадобится либо 32-битная PAE, либо 64-битная поддержка больших объемов памяти.
Также обратите внимание, что если у вас есть, например, 4 ГБ прямо сейчас, и вы покупаете 16 ГБ оперативной памяти, нет необходимости переустанавливать Ubuntu или вносить какие-либо изменения. Просто измените воспоминания, и Ubuntu должен читать и работать с ними из коробки. Нет необходимости в настройке. Если у вас 32-битная с 4 ГБ ОЗУ и вы устанавливаете 16 ГБ или ОЗУ, Ubuntu автоматически изменится с 32-битной на 32-битную PAE. Я могу ручаться за это, так как я перешел с 4 ГБ до 16 ГБ в начале этого года.
Вот ссылка на очень хорошее объяснение Ubuntu о памяти в 32/64: https://help.ubuntu.com/community/32bit_and_64bit#Memory
ОБНОВЛЕНИЕ — Забыл добавить, что некоторые материнские платы имеют обновления BIOS, которые позволяют, исправляют или увеличивают максимальный поддерживаемый объем памяти. Например, у некоторых материнских плат Intel в прошлом были проблемы с максимальным поддерживаемым значением. Обновление BIOS исправило это. Другие материнские платы имели поддержку 4 ГБ из-за проблемы с BIOS, после обновления они поддерживали более 4 ГБ.
Кроме того, сравнивая максимальную поддерживаемую память для процессора и материнской платы, вы можете получить максимум, как минимум, любой из них. Так, например:
ПРИМЕР 1
Максимально поддерживаемая память ЦП — 16 ГБ
Максимальная поддерживаемая память материнской платы — 8 ГБ
Максимальная поддерживаемая память — 8 ГБ (поскольку это самое низкое значение между ЦП и материнской платой)
CASE 2
Максимальная поддерживаемая память ЦП — 16 ГБ
Максимальная поддерживаемая память материнской платы — 32 ГБ
Максимальная поддерживаемая память — 16 ГБ (поскольку это самое низкое значение между ЦП и материнской платой)
CASE 3
Максимальная поддерживаемая память ЦП — 16 ГБ
Максимальная поддерживаемая память материнской платы — 64 ГБ
Максимальная поддерживаемая память — 16 ГБ (поскольку это самое низкое значение между ЦП и материнской платой)
Причиной этого отношения ограничения памяти к процессору является техническая модификация Intel с последними процессорами Core.
Так что в вашем случае у вас есть материнская плата с поддержкой 8 ГБ и процессор с поддержкой 16 ГБ. Это означает, что вы можете использовать максимум 8 ГБ, в зависимости от количества слотов на материнской плате. В этом Asus у вас есть 2 слота, что означает, что у вас может быть два 4 ГБ оперативной памяти, чтобы заполнить максимум 8 ГБ.
Больше информации о x32abi:
LWN — https://lwn.net/Articles/456731/ (рекомендую прочитать комментарии, чтобы легко узнать объяснения об ограничении памяти)
Наконец, начиная с Ubuntu 12.04, все 32-битные версии Ubuntu поставляются с активированной по умолчанию PAE, поэтому все 32-битные будут поддерживать максимум 64 ГБ ОЗУ. Если вы используете 12.04+ и хотите знать, какую архитектуру использовать, вы теперь знаете, что можете использовать любую из них, если будете следовать некоторым рекомендациям:
Если у вас 512 МБ ОЗУ или меньше, настоятельно рекомендуется использовать 32-разрядный
Если у вас меньше 4 ГБ ОЗУ, но больше 512 МБ, рекомендуется использовать 32-битную (но вы все равно можете использовать 64-битную)
Если у вас 4 ГБ ОЗУ, рекомендуется использовать 32-битную (но вы все равно можете использовать 64-битную)
Если у вас от 4 ГБ ОЗУ до 64 ГБ ОЗУ, вы можете использовать 32-разрядную или 64-разрядную версию, но рекомендуется использовать 64-разрядную.
Если у вас более 64 ГБ оперативной памяти, вам нужно использовать 64-битную
Для 32-битной системы теоретический предел составляет 2 ^ 32 = 4096 МБ, но в Ubuntu 12.04 для PAE (расширение физического адреса) по умолчанию включен предел с 2 ^ 36 = 64 ГБ.
Для 64 бит это должно быть 2 ^ 64 = 16 777 216 ТБ (да, это терабайт) теоретически. На самом деле объем оперативной памяти ограничен 2 ^ 48 или 256 ТБ оперативной памяти.
Поскольку теоретические пределы не могут быть достигнуты на обычном ноутбуке, фактическим ограничением является количество слотов памяти (обычно 1-2) в вашем ноутбуке и поддержка чипсета. 8-16 ГБ вполне реально, если вы готовы платить серьезные деньги за модули 8 ГБ.
Я только что купил дополнительные 8 ГБ, чтобы вставить в мой U31SD, всего 12 ГБ. Несмотря на то, что на странице спецификаций Asus говорится, что 8 ГБ — это предел, все работает отлично. Прошел memtest86 и виден для 64-битной Ubuntu.
У меня установлено последнее обновление BIOS, но я не уверен, что это что-то меняет.
К вашему сведению, вывод sudo dmidecode -t 16 показывает Maximum Capacity: 16 GB .
Это ограничение на материнской плате, а не на процессоре. Процессор может поддерживать до 16 ГБ, но если материнская плата может занимать только 8 ГБ, это ваш предел.
В Ubuntu, если вы используете 32-разрядную версию, тогда ваш лимит составляет 4 ГБ, а если вы используете 64-разрядную версию, она намного выше (точно не помню, но она намного выше 16 ГБ).
Но вы всегда будете ограничены вашим оборудованием. Вы всегда должны сравнивать лимит материнской платы и лимит ЦП и принимать наименьшее значение в качестве лимита ПК.
В вашем конкретном случае 8 ГБ связано с тем, что ваша материнская плата не поддерживает больше, чем объем оперативной памяти.
Но сама Ubuntu поддерживает максимум 4 ГБ для 32-разрядных, 64 ГБ для 32-разрядных PAE и 128 ГБ для 64-разрядных (хотя теоретически ограничение намного выше для 64-разрядных).
было много вопросов, что определяет размер указателя. в основном, как правило, вы можете сказать, что это архитектура процессора,
Для адресации 8 ГБ ОЗУ необходимо 8 589 934 592 сопоставлений, а указатель размером 4 байта не может адресовать все возможные значения. вот почему я не могу иметь более 4 ГБ ОЗУ на архитектуре x86.
Объем оперативной памяти не ограничен архитектурой (32 или 64 бита). Архитектура определяет только то, какой объем памяти может быть адресован одновременно ОС и выполняемыми на ней программами. На 32-разрядном компьютере, то есть на компьютере с 32-разрядной шиной памяти, ОС и программы могут «видеть» только 4 ГБ памяти. Но это не значит, что оперативной памяти всего 4 ГБ. Если производитель предоставил это, у вас может быть 16 ГБ или 4×4 ГБ оперативной памяти. В этом случае будет еще 2 «скрытых» адресных строки, а также будет жестко заданная логика для определения уровней этих 2 строк, таким образом, выбрав любую из доступных 4 ГБ ОЗУ — 00 01 10 11. Эти «скрытые» биты адреса не используются программными уровнями, поэтому для этих уровней они могут использовать только 4-байтовый указатель. Количество этих «скрытых»
Это только один пример. Это зависит от поставщика, как они решают предоставить дополнительную оперативную память.
В обычном случае указатель достаточно велик, чтобы вместить больше адресов, чем имеется в системе единиц памяти. Это открывает возможность того, что программа может пытаться получить доступ к адресу, который не соответствует ни одной единице памяти, либо потому, что установлено недостаточно памяти (т.е. за пределами диапазона доступной памяти), либо архитектура не поддерживает такие адреса. Первый случай в некоторых платформах, таких как архитектура Intel x86, можно назвать ошибкой сегментации (segfault). Второй случай возможен в текущей реализации AMD64, где указатели имеют длину 64 бита, а адреса расширяются только до 48 бит. Там указатели должны соответствовать определенным правилам (каноническим адресам), поэтому, если разыменовывается неканонический указатель, процессор вызывает общую ошибку защиты.
С другой стороны, некоторые системы имеют больше единиц памяти, чем адресов. В этом случае более сложная схема, такая как сегментация памяти или разбиение по страницам, используется для использования разных частей памяти в разное время. Последние воплощения архитектуры x86 поддерживают до 36 битов адресов физической памяти, которые были сопоставлены с 32-битным линейным адресным пространством посредством механизма пейджинга PAE. Таким образом, только 1/16 возможного общего объема памяти могут быть доступны одновременно. Другим примером в том же семействе компьютеров был 16-разрядный защищенный режим процессора 80286, который, хотя и поддерживал только 16 МБ физической памяти, мог получить доступ к 1 ГБ виртуальной памяти, но сочетал 16-разрядный адрес и сегмент регистры делали доступ к более чем 64 КиБ в одной структуре данных громоздким.
Чтобы обеспечить согласованный интерфейс, некоторые архитектуры предоставляют ввод-вывод с отображением в памяти, который позволяет некоторым адресам ссылаться на единицы памяти, в то время как другие ссылаются на регистры устройств других устройств в компьютере. Существуют аналогичные понятия, такие как смещения файлов, индексы массивов и ссылки на удаленные объекты, которые служат тем же целям, что и адреса для других типов объектов.
Источник