В чем смысл «i686» в Ubuntu?

Посмотрев на man xmodmap, выясняется, что существует идемпотентный способ определить это:

clear Lock
keysym Caps_Lock = Caps_Lock Control_L

После перезапуска X вы сможете выполнять xmodmap ~/.Xmodmap несколько раз, не получая никаких " bad keysym ".

Обновление: К сожалению, это не похоже на перенос и идемпотент.

1
задан 13 April 2017 в 15:25

3 ответа

i686 является коротким для микроархитектуры P6 от Intel, представленной с помощью Pentium Pro1

. Короче говоря, это 32-битная архитектура. 8086 и 80286 - это даже 16-разрядные процессоры. 80386 - первый 32-разрядный процессор Intel (в дополнение к Real mode) представлен i686 работы. 80586 - знаменитый Pentium ™.

i686 широко используется для описания 32-разрядной архитектуры процессора P6, совместимой с Pentium Pro / II и имеющей набор инструкций. Например, AMD K7 (Duron ™ и Athlon ™) - i686.

38
ответ дан 24 May 2018 в 09:44
  • 1
    Intel никогда не производила процессор с номером 80686 (Pentium II пронумерован 80522/3/4). – Alistair Buxton 7 April 2014 в 21:26
  • 2
    @AlistairBuxton, не знал этого, спасибо! – Danatela 7 April 2014 в 21:29
  • 3
    i686 относится к архитектуре P6, которая началась с Pentium Pro, а не из Pentium II. – Andrew Medico 7 April 2014 в 22:48
  • 4
    @ Andrew, обновил мой ответ. – Danatela 7 April 2014 в 22:52

Как говорили различные плакаты, ваше ядро ​​32-битное. Однако значение i686 заслуживает немного большего объяснения.

При компиляции ядра Linux (что-то, чего конечным пользователям обычно не нужно делать в эти дни), хорошие люди, стоящие за Ubuntu, поставляют готовое ядро ), есть различные варианты, которые вы можете настроить.

Все процессоры x86 совместимы с оригинальным процессором Intel 80386 (сокращенный i386), поэтому, если вы хотите, чтобы ядро ​​было совместимо со всеми процессорами x86, вы должны скомпилировать ядро ​​i386.

Однако современные процессоры имеют много дополнительных функций (интегрированный модуль с плавающей точкой, MMX и т. д.), которые Linux может использовать, если он настроен для этого. В качестве баланса между обратной совместимостью и производительностью ядро ​​Ubuntu скомпилировано с поддержкой функций, которые были доступны на Intel Pentium II (иногда сокращенно i686), поэтому ядро ​​отображается как i686.

Это также отчасти объясняет, почему приложения, скомпилированные для 64-разрядных процессоров, иногда быстрее. I686 впервые появился в 1997 году, а современные процессоры имеют множество функций, которые не были доступны на i686 (SSE, дополнительные регистры и т. Д.), Но приложения должны быть скомпилированы с поддержкой этих функций, что может нарушить совместимость со старыми системами. Напротив, процессоры x86_64 впервые появились в 2003 году, поэтому приложения могут быть скомпилированы с поддержкой некоторых функций, введенных между 1997 и 2003 годами, не опасаясь проблем с совместимостью.

25
ответ дан 24 May 2018 в 09:44
  • 1
    Не существует стандартного определения «i686». Он был использован для описания всего, начиная с архитектуры P6 (включая процессоры, которые больше не могут запускать Ubuntu), «Pentium II и выше». от Ubuntu и до «Atom / Core2 или выше», другими распределениями. – Alistair Buxton 7 April 2014 в 21:32
  • 2
    Мне нравится, когда вы говорите " Это также отчасти объясняет, почему приложения, скомпилированные для 64-битных процессоров, иногда бывают быстрее. & Quot ;. Впервые я запустил полную 64-битную систему, меня унесло улучшение скорости. Однако вы не увидите этого ускорения при запуске смешанной 32- / 64-битной системы. – Zane 7 April 2014 в 21:36
  • 3
    Процессоры также имеют инструкцию CPUID, которая позволяет CPU сообщать о знаках функций. Вы можете увидеть их в / proc / cpuinfo. Поэтому, даже если программное обеспечение скомпилировано для i686, оно может проверить флаги, чтобы увидеть, поддерживаются ли дополнительные функции. – Zan Lynx 7 April 2014 в 23:00
  • 4
    Приветствия для информации о флагов функций и капризов именования процессоров. Должен признаться, это было давно, так как я должен был скомпилировать свое собственное ядро ​​(возможно, где-то в серии 2.0), и я полагаю, что с тех пор Linux стал намного умнее о функциях процессора. Если вы считаете, что презентация может быть улучшена, пожалуйста, предложите любые изменения, о которых вы можете подумать. – James_pic 8 April 2014 в 13:07
  • 5
    Если ваша система имеет ограниченную ОЗУ и не выполняет много числовой обработки, тогда вы можете получить лучшую производительность из 32-битной системы, поскольку различные вещи будут храниться более компактно, и ваша система может сделать немного больше, прежде чем прибегать к к использованию дискового ввода-вывода. Не делайте слишком много предположений об этом без тестирования. – mc0e 7 November 2016 в 18:38

Откройте «Системные настройки», затем нажмите «Подробности». Затем вы увидите, какой тип ОС у вас есть.

У меня Ubuntu 12.04 LTS 64 бит, а uname -a показывает это:

Linux ubuntu1 3.2.0-60-generic #91-Ubuntu SMP Wed Feb 19 03:54:44 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

См. https://superuser.com/questions/238112/what-is-the- разница между ними-i686-и-x86-64

1
ответ дан 24 May 2018 в 09:44
  • 1
    одна проблема есть, я не могу найти системные настройки в UE 3.8, я только что установил ее, системные настройки не видны в системе / администрировании или системе / предпочтениях почему? – Mukund 7 April 2014 в 15:02
  • 2
    Если вы не можете найти его, вы можете начать, если с терминала: gnome-control-center – SPRBRN 7 April 2014 в 16:43

Другие вопросы по тегам:

Похожие вопросы: