gladilov.org.ru 

1307 заметок с тегом

ОС

Позднее Ctrl + ↑

Загадочные BogoMIPS’ы

Давно хотел сделать статейку о том, что такое BogoMIPS’ы. Наконец руки дошли и до этого

Когда-то в юнлсти я обратил внимание на то, что при начальной загрузке ядра Linux выдаётся сообщение примерно такого вида:

Calibrating delay loop… 1699 BogoMIPS

Оказывается, в ядре Линукс — это способ измерения оценки скорости исполнения процессорных инструкций на компьютере, он предназначен для калибровки внутренних циклов ядра.

Теория: Показать

BogoMIPS’ы можно определить как «число миллионов раз в секунду, когда процессор может ничего не делать» («the number of million times per second a processor can do absolutely nothing»).

Это собственное изобретение Линуса. В версии ядра 0.99.11 от 11 июля 1993 года была нужда в цикле синхронизации для калибровки скорости процессора компа. Поэтому во время загрузки ядро ​​измеряет, насколько быстро на компьютере выполняется определенный цикл. Приставка «Bogo» происходит от слова «bogus» (англ. «фальшивка», «подделка»). Поэтому значение BogoMIPS’ов даёт некоторое представление о скорости процессора, но при этом это значение очень ненаучно. Вывод этого значения был немного полезен для отладки и проверки работоспособности кэшей компьютеров и работы кнопки «Турбо» (когда она ещё была на системниках).

BogoMIPS’ы определены в /usr/src/linux/init/main.c, где описан простой алгоритм на C, с хорошим примером арифметики с плавающей запятой в полностью целочисленном ядре, соответствующая переменная ядра loops_per_sec используется в нескольких драйверах для более серьёзной работы. Фактически функция задержки udelay() написана на ассемблере, поэтому каждый порт на другую архитектуру имеет собственное определение в /include/asm/delay.h. При этом, переменная loops_per_sec и функция udelay() используются во многих драйверах, посмотреть это можно так:

cd /usr/src/linux
find . -name '*.[hcS]' -exec fgrep loops_per_sec {} /dev/null \;
find . -name '*.[hcS]' -exec fgrep udelay {} /dev/null \;

Цикл расчёта BogoMIPS’ов для процессоров с не Intel-архитектурой похож, но не всегда, так как он пишется на другой реализации языкя ассемблера.

Методов определения богомипсов три:

  1. (самый предпочтительный) просмотр в /proc/cpuinfo (например так:
cat /proc/cpuinfo | grep -i bogomips

  1. просмотр вывода системного журнала для контроля, что было напечатано во время загрузки (с помощью dmesg или syslogk). Иногда информация всё ещё может находиться на загрузочной консоли.
  2. (рекомендуется только для не Linux-систем) используя отдельную программу bogomips..

Теперь практика. Действующие, гм..., лица и устройства: Показать

Тип Сетевое имя Бренд, Модель
/Аппаратная ревизия
ОС
(прошивка)
Процессор ОЗУ
Компьютер soulhome  Debian 10 Intel Celeron G1610@2.6ГГц 16Гб
VPS-сервер gor QEMU/KVM  Debian 9 Intel Celeron@2.1ГГц 1Гб
Нетбук asus4g Asus Eee PC 4G (701)  Debian 9 Intel Celeron M ULV 353@900МГц,
работает на частоте 630МГц
2Гб
Маршрутизатор hive D-Link DIR-320/A2E  DebWRT Broadcom BCM3302 v2.9@240МГц 32Мб
IPTV STB-приставка x96mini DQiDianZ X96 mini  armbian 5.67 Amlogic S905W, 4xARM Cortex-A53@1,5ГГц 2Гб
Маршрутизатор linksys Linksys WRT300N/1.1  DD-WRT v24-sp2 mega v1.51.2 Broadcom BCM4705L@300МГц 32Мб
Маршрутизатор midge Edimax BR-6104KP/1.3.r510  flyrouter3-office_usb ADMtek 5120P@170МГц 16Мб
Маршрутизатор tplink TP-Link TL-WR841ND/8.1  OpenWRT Attitude Adjustment 12.09, r36088 Atheros AR9341@535МГц 32Мб
IPTV STB-приставка mag250 TeleTec MAG-250 Micro  0.2.18-r22-250 STMicroelectronics STi7105@450МГц 256Мб
Смартфон k3note Lenovo K3 Note  Android 5.1 MediaTek MT6752, 8xARM Cortex-A53@1,7ГГц 2Гб
Маршрутизатор gw D-Link DIR-300/A/C1E  2.5.7 Realtek RTL8196C@390МГц 32Мб

На всех (почти) подконтрольных мне домашних железках с ОСью/прошивкой на ядре Linux настроил авторизацию по ключу по протоколу SSH. Кое-где из-за старости и ущербности и отстуствия сорременных алгоритмов обмена ключей прищлось в /~.ssh/config прописать

Host <узел>
    KexAlgorithms +diffie-hellman-group1-sha1

чтобы не писать в командной строке конструкцию вида:

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 <узел> 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'

На железках, в которых dropbear кроме motd выдавал ещё и login banner — пришлось пойти на крайние меры путём убийства процесса dropbear и старта его без указания файла с банером, т. е. вместо процесса

dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_host_rsa_key -d /tmp/root/.ssh/ssh_host_dss_key -p 22

делаю

killall dropbear

и стартую процесс

dropbear -r /tmp/root/.ssh/ssh_host_rsa_key -d /tmp/root/.ssh/ssh_host_dss_key -p 22

Авторизацию по ключу сделал так:

cat ~/.ssh/id_rsa.pub | ssh <узел> 'cat >> .ssh/authorized_keys'

Затем на всех узлах выполнял код

ssh <узел> 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'

Полученный результат я свёл на скрин с инфой (1920x1080): Показать

Текстовая расшифровка изображения (вдруг кому пригодится): Показать

soul@soulhome:~$ cat /proc/cpuinfo | grep -i bogomips && cat /proc/version
bogomips        : 5188.12
bogomips        : 5188.12
Linux version 4.9.0-9-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.9.168-1+deb9u5 (2019-08-11)
soul@soulhome:~$ ssh gor 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
bogomips        : 4199.99
Linux version 4.9.0-9-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.9.168-1+deb9u2 (2019-05-13)
soul@soulhome:~$ ssh asus4g 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
bogomips        : 1260.10
Linux version 4.9.0-6-686-pae (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.9.88-1+deb9u1 (2018-05-07)
soul@soulhome:~$ ssh hive 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
BogoMIPS                : 239.10
Linux version 2.6.34.5 (amain@amain-laptop) (gcc version 4.3.3 (GCC) ) #1 Sun Sep 26 18:20:27 CEST 2010
soul@soulhome:~$ ssh x96mini 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
BogoMIPS        : 48.00
BogoMIPS        : 48.00
BogoMIPS        : 48.00
BogoMIPS        : 48.00
Linux version 5.1.0-rc5-next-20190416-aml-s905-gde3c659c8-dirty (root@vbox) (gcc version 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4] (Linaro GCC 7.4-2019.02)) #5.78 SMP PREEMPT Tue Apr 16 13:56:07 MSK 2019
soul@soulhome:~$ ssh linksys 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
BogoMIPS                : 299.82
Linux version 2.4.36 (root@dd-wrt) (gcc version 3.4.6 (OpenWrt-2.0)) #2827 Thu Jun 19 08:30:07 CEST 2008
soul@soulhome:~$ ssh midge 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
BogoMIPS                : 174.48
Linux version 2.4.32 (builder@work) (gcc version 3.4.5 (ZFT Lab. and FlyRouter Team)) #2 Вто Мар 24 21:44:31 EET 2009
soul@soulhome:~$ ssh tplink 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
BogoMIPS                : 266.64
Linux version 3.3.8 (blogic@Debian-60-squeeze-64-minimal) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #1 Sat Mar 23 16:49:30 UTC 2013
soul@soulhome:~$ ssh k3note 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
BogoMIPS        : 26.00
BogoMIPS        : 26.00
BogoMIPS        : 26.00
Linux version 3.10.65+ (buildslave@shws40) (gcc version 4.9 20140514 (mtk-20150408) (GCC) ) #1 SMP PREEMPT Wed Oct 28 14:17:24 CST 2015
soul@soulhome:~$ ssh mag250 'cat /proc/cpuinfo | grep -i bogomips && cat /proc/version'
bogomips        : 444.41
Linux version 2.6.32.59_stm24_0211-MAG250_7105 (dmgrib@Server01.localdomain) (gcc version 4.6.3 20120313 (STMicroelectronics/Linux Base 4.6.3-106) (GCC) ) #41 PREEMPT Thu Jun 8 13:01:38 EEST 2017
soul@soulhome:~$ telnet -E dlink 
Trying 10.9.1.1...
Connected to dlink.
Escape character is 'off'.
                                                                                                                                                                                             
Dlink-Router login: soul                                                                                                                                                                     
Password:                                                                                                                                                                                    
Welcome to                                                                                                                                                                                   
     _______          ___     __  ____   _  _   ___                                                                                                                                          
    |  ___  \        |   |   |__||    \ | || | /  /                                                                                                                                          
    | |   | ||  ___  |   |__  __ |     \| || |/  /                                                                                                                                           
    | |___| || |___| |      ||  || |\     ||     \                                                                                                                                           
    |_______/        |______||__||_| \____||_|\___\                                                                                                                                          
                                                                                                                                                                                                                  
                     = Building Networks for People =                                                                                                                                                             
                                                                                                                                                                                                                  
                                                                                                                                                                                                                                             
                                                                                                                                                                                                                                             
BusyBox v1.19.2 (2016-10-19 16:25:25 MSK) built-in shell (ash)                                                                                                                                                                               
Enter 'help' for a list of built-in commands.                                                                                                                                                                                                
                                                                                                                                                                                                                                             
soul@dlink:$ cat /proc/cpuinfo | grep -i bogomips                                                                                                                                                                                            
BogoMIPS                : 389.12                                                                                                                                                                                                             
soul@dlink:$ cat /proc/version 
Linux version 2.6.30.9 (builder@rd) (gcc version 4.4.5-1.5.5p2 (GCC) ) #1 Wed Oct 19 16:21:12 MSK 2016
soul@dlink:$ exit
Connection closed by foreign host.
soul@soulhome:~$

Источники:
http://tldp.org/HOWTO/BogoMips/index.html
http://www.clifton.nl/bogo-faq.html
https://ru.wikipedia.org/wiki/BogoMIPS

Новая виртуальная ОСь — 26.08.2019-6

 Kanotix 2019-5 (Silverfire-Nightly-Build)

Дистрибутив с ядром Linux на основе  Дебиана, работает как Live-CD практически на любом компьютере, автоматически обнаруживая и конфигурируя оборудование. Сначала использовалась ветка sid, затем в 2007 году стала использоваться stable. Дистр начал пилить в декабре 2003 года  Йорг Широтке (Jörg «Kano» Schirottke). Первая версия (01-2003 «X-MAS 2003 Preview Release — CD») вышла 24 декабря 2003 года, стабильная версия (01-2004 «Bug Hunter 01») была выпущена 3 февраля 2004 года. Эта версия была выпущена 8 мая 2019 года. Рабочая графическая среда —  LXDE,  KDE plasma. Размер файла образа винта после установки — 7,6 гига.

 Kanotix

Новая виртуальная ОСь — 26.08.2019-5

 Semplice Linux 7.0.1 (Comfortably Numb)

Простой, быстрый и лёгкий Linux-дистрибутив, основанный на нестабильной ветке  Дебиана. Дистр разрабатывал с 2009 года  Эухенио Паолантонио (Eugenio «g7» Paolantonio) (затем к нему присоединились  Luca и  Джузеппе Корти (Giuseppe Corti)). Первый выпуск (2.0) был 12 декабря 2012 года, последний выпуск (7.0.1) — 14 апреля 2015 года. Оконный менеджер —  Openbox,  Vera. Файл образа винта после установки стал размером 2,7 Гб.

 Semplice

Новая виртуальная ОСь — 26.08.2019-4

 Parsix GNU/Linux 8.15 R0 (Nev)

GNU/Linux-дистрибутив в формате Live-DVD/-USB, основанный на  Дебиане (ранее также на  KANOTIX и  KNOPPIX). ОСь имеет двуязычную поддержку: персидский и английский языки, поэтому может использоваться как теми, кто изучает восточные языки, так и просто любителями удобных пакетов приложений. Пилился  Аланом Багумяном (Alan Baghumian) (ныне живёт в Калифорнии). Релизы (с версии 0.90 «Barry», выпущенной 17 июня 2007 года) называются в честь персонажей фильма «Делай ноги» («Happy Feet»). Первый релиз (версия 0.45) был 1 февраля 2005 года, последняя версия (8.15) вышла 25 января 2017 года. 5 мая 2017 года анонсирована (архивная ссылка) заморозка развития проекта. Среда рабочего стола —  GNOME. Образ винчестера после установки занял 5,1 Гб.

 Parsix

Новая виртуальная ОСь — 26.08.2019-3

 Simplicity Linux 19.10 X Alpha

Дистрибутив GNU/Linux на базе  Puppy Linux. Доступен в трёх версиях: Desktop, Mini и X. Версия Mini содержит облачное программное обеспечение, Desktop предлагает набор универсального программного обеспечения, X предназначен для предоставления передового программного обеспечения пользователям ПК (единственная версия, в котором есть 64-битная сборка). ОСь пилит  Дэвид Парс (David Purse). Первая версия (13.7) выпущена 5 июля 2013 года. Cреда рабочего стола —  Xfce (ранее использовался  LXDE,  KDE,  JWM). Размер файла образа винчестера после установки — 3,4 гигабайта.

 Simplicity

Новая виртуальная ОСь — 26.08.2019-2

 BlackWeb 1.1 (Morpheus)

Linux-дистрибутив, предназначенный для расширенного тестирования на проникновение и аудита безопасности, содержит несколько сотен инструментов, предназначенных для различных задач информационной безопасности, таких как тестирование на проникновение, исследование безопасности, компьютерная криминалистика и реверс-инжиниринг. Создан на основе  Дебиана. Пилится с июня 2017 года  хакерской группой blackweb. Среда графического рабочего стола —  LXDE,  Openbox. После установки размер файла образа винта составил 9,8 Гб.

 BlackWeb

Новая виртуальная ОСь — 26.08.2019

 Asril OS 7.0 (Lare)

Дистрибутив Linux на основе  Linux Mint, может использоваться для настольных компьютеров, ноутбуков и нетбуков. Разработчик —  Асрил Мархама (Asril Marhamah) с командой. В дистр интегрировано много свистоперделок, но, в принципе, комфортно пользоваться им можно. Релиз первой версии (1.0 Lopi) был 10 января 2013 года. Графическая рабочая среда —  Cinnamon. Размер файла образа винта после установки — 11,4 Гб.

 AsrilOS

Названия выпусков Android переходят на цифровую нумерацию

Компания Google сообщила о прекращении практики присвоения выпускам платформы Android названий сладостей и десертов в алфавитном порядке и переходу к обычной цифровой нумерации. Ранее применявшаяся схема была заимствована из практики присвоения имён внутренним веткам, используемым инженерами Google, но вызывала много путаницы среди пользователей и сторонних разработчиков. Таким образом развиваемый ныне выпуск Android Q теперь официально назван Android 10, а следующий выпуск изначально будет продвигаться как Android 10.1 или Android 11.

В анонсе также отмечается, преодоление очередного рубежа популярности — Android теперь используется на более чем 2.5 миллиардах активных устройств. В то же время представлен обновлённый логотип проекта, в котором вместо полного изображения робота использована только его голова, а текст отображается другим шрифтом и чёрным цветом вместо зелёного.

Источник

Новая виртуальная ОСь — 24.08.2019

 EulerOS 2.0 SP2

Linux-дистрибутив от Huawei, который планируется использовать в качестве серверной ОС для их линейки серверов (доступен для архитектур amd64 и arm64v8), сделан на кодовой базе  CentOS’и, при этом с 9 сентября 2016 года имеет Unix-сертификацию (сертификация узкая, только для использования на Huawei KunLun Mission Critical Server). Название дистра происходит от наименования одной из лаборатории Huawei им. Эйлера, которая разработала эту ОСь. Это лаборатория «Huawei 2012». Ещё одна лаборатория носит имя Гаусса (пилит БД на базе PosgresSQL). Релизы сопровождает  Дэвид Лян (David Liang), ведущий разработчик открытых проектов Huawei. Окружение графического рабочего стола —  GNOME. Размер файла образа винчестера после установки — 3,5 гига.

 EulerOS

Ранее Ctrl + ↓
Наверх