gladilov.org.ru gladilov.org.ua

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

железо

Статьи и новости о компьютерном ’железе’ и около него.



Загадочные 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

Драйвер флоппи-дисков оставлен в ядре Linux без сопровождения

В состав ядра Linux 5.3 приняты изменения с добавлением дополнительной защиты ioctl-вызовов, связанных с драйвером floppy, а сам драйвер помечен как оставленный без сопровождения («orphaned»), что подразумевает прекращение его тестирования в Jiri.

Показать

Драйвер рассматривается как устаревший, так как для его тестирования трудно найти работающее оборудование — все актуальные внешние накопители, как правило, используют интерфейс USB. При этом удалению драйвера из ядра мешает то, что контроллеры флоппи-дисков по-прежнему эмулируются в системах виртуализации. Поэтому драйвер пока сохраняется в ядре, но его корректная работа не гарантируется.

Кроме того, в драйвере floppy устранена уязвимость (CVE-2019-14283), позволяющая через манипуляции с ioctl непривилегированному пользователю, имеющему возможность вставки своего флоппи-диска, прочитать данные из областей памяти вне границ буфера копирования (например, в смежных областях могут содержаться остаточные данных из дискового кэша и буфера ввода). С одной стороны уязвимость остаётся актуальной так как драйвер floppy автоматически загружается при наличии соответствующего эмулируемого контроллера в системах виртуализации (например, по умолчанию используется в QEMU), но с другой стороны для эксплуатации проблемы необходимо чтобы был подключен подготовленный злоумышленником образ флоппи-диска.

Источник

51-й день рождения Intel

18 июля 1968 года американские инженеры Роберт Нойс и Гордон Мур, получив трехмиллионный «кредит доверия» под «декларацию о намерениях» развернуть разработки больших интегральных схем (БИС), зарегистрировали компанию под названием «NM Electronics».

Компания Нойса и Мура поначалу занималась выпуском статической оперативной памяти. Вскоре компанию переименовали в «Intel» (по первым слогам термина «integrated electronics»). Конкуренция со стороны японских производителей памяти вынудила ее сосредоточиться на выпуске микропроцессоров. В 1971 году был выпущен первый микропроцессор, а к началу 1980-х годов компания стала главным в мире производителем процессоров.

Показать

Сегодня компания «Intel» — крупнейший в мире производитель микропроцессоров, а также выпускает полупроводниковые компоненты для промышленного и сетевого оборудования.

За всю историю компании не обошлось и без громких скандалов. В 1994 году в процессорах Pentium была обнаружена ошибка в операциях с плавающей точкой, и при огромном желании любой пользователь мог вызвать её. Компания предложила заменить процессоры за свой счет. Эта история благоприятно сказалась на известности компании. Инцидент широко освещали в прессе и даже те люди, у которых не было компьютеров, узнали новые слова и термины Intel, Pentium, Celeron из новостей и рекламы.

А в 2007 году вспыхнул скандал, связанный с расизмом. Вышла реклама Core 2 Duo, где 6 афроамериканцев поклонялись белым мужчинам. Была поднята такая шумиха, что представителям компании пришлось публично извиниться на корпоративном сайте.

День компьютерщика

14 февраля — неофициальный, но широко отмечаемый в профессиональном мире День компьютерщика. 14 февраля 1946 года научному миру и всем заинтересованным был продемонстрирован первый реально работающий электронный компьютер ENIAC I (Electrical Numerical Integrator And Calculator).

Интересно, что работы по разработке первой вычислительной машины спонсировались американской армией, которой компьютер был необходим для проведения военных расчетов, планирования и программирования. ENIAC I проработал до 23 часов 45 минут 2 октября 1955 года, а потом был разобран.

Показать

Конечно, были и более ранние компьютеры, но это все прототипы и экспериментальные варианты. Если уж на то пошло, то первым компьютером вообще была аналитическая машина Бэббиджа... Но ENIAC был первым реально работающим на практических задачах компьютером. Между прочим, именно от ENIACа современные компьютеры унаследовали двоичную систему счисления.

ENIAC был разработан для решения одной из серьезных и нужных задач того времени: для обсчета баллистических таблиц армии. В армии были отделы, занимающиеся обсчетом баллистических таблиц для нужд артиллерии и авиации. Работали в этих отделах люди на должности Армейского Калькулятора.

Естественно, мощности и производительности этих «вычислительных ресурсов» армии не хватало. Именно поэтому кибернетики в начале 1943 года приступили к разработке концепции нового вычислительного устройства — компьютера ENIAC.

Именно поэтому 14 февраля отмечается праздник — День компьютерщика. А в России также есть и официальный профессиональный праздник работников данной отрасли — День программиста (отмечается в 256-й день года — 13 сентября, а если год високосный — то 12 сентября).

47 лет назад Intel выпустила первый процессор 4004

15 ноября 1971 года фирма Intel выпустила свой первый микропроцессор — модель 4004.

Эволюционный процесс, который привел к современным микрокомпьютерам, был чрезвычайно быстрым. Хотя при создании машины, известной как «персональный компьютер», было использовано большое число открытий и изобретений, следует упомянуть событие, ставшее важнейшей вехой в истории науки. Микропроцессор Intel® 4004, появившийся 15 ноября 1971 года, начал революцию в электронике, изменившую мир.

Показать

До 4004 на рынке не было программируемых микропроцессоров. Они стали первыми процессорами, сделавшими программное обеспечение важным элементом проектирования микроэлектроники.

В 1969 году фирма Intel внесла волнение в электронную индустрию, выпустив ИС с памятью 1 Кбит, которая была намного больше любой другой, имевшейся в то время. Из-за успеха этой фирмы в разработке и производстве микросхем с ней связалась японская фирма Busicomp, производящая калькуляторы и предложила выпустить 12 микросхем для одного из своих калькуляторов.

Инженеры фирмы Intel взяли 12-чиповую разработку и объединили все желаемые функции и возможности в одной родовой многоцелевой микросхеме. Эта ИС отличалась от предыдущих разработок, которые были запрограммированы для одной цели с помощью встроенных инструкций.

Концепция состояла в том, чтобы сконструировать почти полное вычислительное устройство на одной микросхеме. Четырехбитовый микропроцессор Intel 4004 стал именно таким устройством. Он был размером с ноготь, и имел такую же вычислительную мощность, как первый электронный компьютер ENIAC, созданный в 1946 году, занимавший целую комнату и использовавший 18000 вакуумных трубок.

Опубликованы спецификации IEEE 802.11aq

Организации IEEE и IEEE Standards Association, специализирующиеся на разработке, стандартизации и продвижении передовых технологий, сообщили об одобрении и публикации спецификации IEEE 802.11aq. Эта спецификация — дополнение к стандарту, упрощающая обнаружение сервисов в беспроводных локальных сетях. Она позволяет обнаруживать сервисы, доступные в беспроводных локальных сетях (WLAN). Как утверждается, от внедрения поддержки IEEE 802.11aq выиграют как сетевые операторы, так и конечные пользователи.

Показать

«Подключение к WLAN без возможности легко узнать, поддерживает ли эта сеть конкретную услугу, часто является источником разочарования для конечных пользователей. Дополнение IEEE 802.11aq устраняет эти ситуации, позволяя пользователям быстро определять, какие услуги доступны, до фактического подключения устройств, — так охарактеризовал новую спецификацию Стивен Макканн (Stephen McCann), руководитель группы IEEE 802.11aq. — IEEE 802.11aq также обеспечивает критическое конкурентное преимущество за счет дифференциации услуг в переполненных рыночных средах».

По сути, IEEE 802.11aq определяет параметры для запросов, обрабатываемых беспроводной сетью до подключения устройства. С их помощью пользователя могут быстро и легко обнаружить, какие типы услуг поддерживаются, за счет чего упрощается выбор сети для подключения.

Спецификации IEEE 802.11aq уже доступны для покупки в магазине стандартов IEEE.

Источник

Мои первые компьютеры

Моим первым в жизни компьютером был ПК-01 «Львов», основанный на КР580ВМ80А (аналог Intel 8080) с тактовой частотой 2,5 МГц. Аппаратная чать компа была построена на схемах средней степени интеграции серий 155 и 555. Объём ПЗУ (8 УФ-РПЗУ К573РФ2) составлял 16 Кб, общий объём ОЗУ (К565РУ5) — 64 Кб, причём из них 16 Кб занимала видеопамять. Обработка ввода-вывода, управление цветом изображения и распределением доступа к ОЗУ осуществлялось с помощью двух адаптеров КР580ВВ55.

Купил мне его папка за талоны и купоны (карбованцев уже не выло, а гривны ещё не ввели) в «Детском мире», где потом был «Таир», а сейчас «Вольтмарт».

Показать

С помощью этого монстрика я узнал, что у слова «аккумулятор» есть другие значения и начал разбираться с ассемблером. Ну и на встроенном Бэйсике тоже что-то корябал писал, пока не пересел за соседский Sinclair ZX Spectrum (Юра, спасибо!), вот такой: Показать

Этот Спекки очень мне помог с углублением знаний по ассемблеру (и дизассемблеру, само собой), кажется использовали MONS/GENS

Особо запомнилось три игры на нём — Elite, Myth: History in the Making и Fighter Bomber. Ну и WEC Le Mans с серией Dizzy, пожалуй.

В институте нас не очень-то допускали в машинный зал, наверное, думали — сломаем (или разворуем, времена были лихие, «благословенные 90-е»...) Хотя там был целый класс информатики из ДВК-2. Показать

Затем мой однокурсник Паша купил IBM PC-XT с 640 Кб ОЗУ, винчестером ёмкостью 10Мб и монитором VGA. Я начал ездить к нему домой в Белогорск, там я написал и скомпилировал свою первую прогу на асме для x86-архитектуры. Это «чудо программистской мысли» с помощью прерывания DOS Int 21 печатала на экране значение регистра BX. Ну и поиграл в первую мою игру на «писюке» — Another World (видео интрохи и часть прохождения). Показать

А вскоре сосед Юра приобрёл что-то с «тракторным» винтом WD на 40 Мб и процессором i80286 (точно не помню, возможно i80386, так как Linux у него ставился и работал без проблем, хотя есть патч). На этой машинке мы с Юриком уже добрались до препарирования полиморфного файлово-загрузочного стелс-вируса OneHalf и написания на его основе резидента, активирующегося при загрузке, перехватывающего вектора некоторых прерываний и контролирующего по паролю доступ к директории C:\GAMES.

UPD: Затем в 1996 году я купил себе в «Оптиме» машинку с  95-ой виндой OSR2, в комплекте был процессор Am5x86-P75@133 МГц от AMD (аналог 486), видюха S3 Trio64V+ с 1 Мб видеопамяти, SB16-совместимая звуковая карта ISA и винт Quantum Fireball на 640 Мб (я его одно время возил в гости к Паше в Белогорск, трясся на автобусах, боялся за винт, но возил). На этой машине уже шёл Doom2, запускалась Second Reality и устанавливалась  BeOS R5,  OS/2 (Warp и Merlin) и прочие  Слаквари.

P. S. А, забыл, ещё на ЕС-1841 в «Доктора Ливингстона» играл :-) Показать

2018   досуг   железо   мну

Intel устранила все замечания в лицензии на микрокод

Компания Intel приняла во внимание мнение сообщества и устранила в лицензионном соглашении на микрокод все замечания, высказанные Брюсом Перенсом и разработчиками Debian. В частности, из соглашения убраны запреты на публикацию результатов тестирования производительности и исключён пункт, предписывавший предварительное принятие лицензионного соглашения перед началом загрузки.

Показать

Более того, текст нового лицензионное соглашение кардинально сокращён (с 331 до 12 строк), по сути возвращено старое соглашение, которое ранее на протяжении многих лет использовалось для распространения файлов с прошивками в формате «dat».

Тем не менее, разработчики Debian решили не спешить с поставкой обновления микрокода, а дождаться появления нового соглашения не только на сайте компании, но и в составе архива с микрокодом. В настоящее время для загрузки пока предлагается старый архив, включающий проблемное лицензионное соглашение.

Источник

2018   Intel   в мире   железо   интересное   ОС   события   софт

Intel запретила публиковать бенчмарки патчей микрокода

Компания Intel обновила условия лицензии на микрокод, исправляющий уязвимость L1TF и тем самым запретила публикацию результатов тестирования и сравнения производительности процессоров.

Фрагмент нового текста лицензии: Показать

You will not, and will not allow any third party to (i) use, copy, distribute, sell or offer to sell the Software or associated documentation; (ii) modify, adapt, enhance, disassemble, decompile, reverse engineer, change or create derivative works from the Software except and only to the extent as specifically required by mandatory applicable laws or any applicable third party license terms accompanying the Software; (iii) use or make the Software available for the use or benefit of third parties; or (iv) use the Software on Your products other than those that include the Intel hardware product(s), platform(s), or software identified in the Software; or (v) publish or provide any Software benchmark or comparison test results.

Источник

2018   Intel   в мире   железо   интересное   ОС   события   софт
Ранее Ctrl + ↓
Наверх