Pull to refresh

Comments 161

Microsoft: Не работает проброс USB в виртуалки!

VMWare, VirtualBox - Ну да, ну да, пошёл я на...

По непонятной для меня причине я не смог сохранить состояние при выходе из VirtualBox. Даже если бы он работал идеально, на первом занятии семинара была бы возня с копированием 50 GB имиджа в виртуалку (а если в ней Xilinx Vivado размером 80 GB то больше). А с SSD просто вставил и пошел.

Ну я сам VirtualBox (Portable) на 2.5 USB SSD ставил и оно отлично работало (С десятком разных виртуалок в комплекте). Только перед первым запуском надо не забывать поставить комплектные драйвера.

По USB пробрасывал много всякого разного, в основном - старые телефоны и планшеты, да всякие специфичные девайсы для работы с машинами (Зачастую это были настолько старые девайсы, что софт для работы с ними работает исключительно под DOS или Windows XP). Проблемы были только раз - из-за девайса с USB 1.1 и Windows 98...

То есть вы предлагаете вставлять SSD и запускать VirtualBox на нем? А чем это лучше в нашей конкретно ситуации (куча тяжелого софта и USB для программаторов FPGA плат)?

Виртуалка запускается сразу и на любом железе.
Установка-же целой операционки на внешний диск, как минимум будет заметно дольше запускаться (Повторное определение нового оборудования). Плюс её придётся заранее напихать кучей драйверов на все случаи жизни.

А может и вовсе не запуститься из-за отсутствия или некорректной работы какого-то драйвера.

VirtualBox или VMWare просто работают. У них только драйвер сети может взбрыкнуть (USB, если не ошибаюсь, пробрасывается "Нативно", без драйвера)

*** Виртуалка запускается сразу и на любом железе. ***

Так оно и так и так быстро запускается. А виртуалку еще инсталлировать надо.

*** Только перед первым запуском надо не забывать поставить комплектные драйвера. ***

Вы имеете в виду драйвера для USB Blaster для виндоус (вне виртуалки) или для linux (внутри виртуалки)?

Надо ставить на хост драйвер VBoxUSB и VBoxNetwork. Внутри виртуалки, само собой, ставится VBox Guest Additions.

Вся фишка в том, что внутри виртуалки у вас уже заранее всё настроено и никак не зависит от железа, на котором оно запускается. Сам же Virtualbox (или другая виртуалка) зависит лиш от вышеупомянутых двух драйверов, в остальном может запуститься без установки практически на любом железе.
Плюс у софта, в большинстве случаев, не будет слетать активация из-за смены железа.

Так оно на линуксе с SSD и так работает (то что мне нужно то бишь USB Blaster). То есть виртуалка мне в этом смысле ничего не улучшает, а вот дополнительный геморой (ученики должны у себя на зоопарке компьютеров инсталлировать VirtualBox) прибавляет.

Да и Гугл говорит тут не все идеально. И комментаторы ниже про "легче SSD чем с виртуалкой воевать"

Когда у Вас не заработает wifi на загруженном с USD linux - вот тогда и станет понятно, что linux - не панацея.

А глюков там потенциально хватает разных.

А есть гарантия что wifi заработает на линксе внутри виртуальной машины?

Да. Ведь там драйвера будут установлены и настроены заранее.

Тем кто готовит образ виртуальной машины? А как это отличается от драйверов на загружаемом SSD? Они тоже устанавливаются заранее для разных конфигураций.

Нет. Внутри виртуалки ставится только драйвер виртуального адаптера. На хосте можно вообще ничего не ставить (Работает в режиме NAT), либо ставить драйвер виртуального адаптера, если нужен сетевой мост.

Тоесть не надо ставить 100500 драйверов на все случаи жизни. Достаточно этих двух (одного).

Вообще виртуалка в данном контексте нужна исключительно для решения проблем при переносе на новое железо, минимизируя кол-во телодвижений для запуска (Достаточно лиш поставить на хост дрова от самой виртуалки, да запустить её. Портативный вариант рулит. Можно даже вообще всё в один bat'ник утрамбовать и запускать одним нажатием.)
Но да, теряем сколько-то оперативки на хост-систему. Это главный минус.

Теперь я вобще ничего не понимаю. Так проблема с USB Blaster не у линукса внутри виртуалки, а у Windows хоста, как я наблюдал еще на семинаре в 2015 году и как написал DmitryZlobec ниже.

Из-за разных версий Windows, разных установок в них, ордунга Микрософта и разгильдяйства Интела, которые умудрились в 2021 году выпустить неподписанный драйвер для скачивания.

Критическим ресурсом в моих условиях является внимание учеников, которые, если на первом дне семинара не начнут сразу играться с FPGA, а провозятся три часа, стоя в очереди к преподавателю с вопросами "а у меня виртуалка на моем ноутбуке не ставится" - то они потеряют интерес и просто начнут расходиться. И на второй день не придут.

Если вы пробрасываете USB устройство внутрь виртуальной машины - то проблемы с windows драйверами не будет. Будут использоваться линуксовые.

А вот я бы не взялся разбираться в срочном порядке почему отваливается wifi на очередном ноуте и какая там нужна версия ядра и какие параметры прописывать для модуля.

На хост машине Вам надо будет просто поставить VMWare/Virtualbox, там все в комплекте (виртуалка будет ходить через виртуальный сетевой адаптер и ничего знать не будет про сетевую карту хост-компьютера). Можно, как правильно выше написали, сделать bat файл и все будет ставиться автоматом, при этом ученики могут делать снапшоты виртуалки - на случай если что-то сломают, чтобы откатиться назад.

То, что я написал - уже работает - если линукс вообще стартует (может не стартовать из-за бит локера), то дальше проблем с драйвером USB Blaster не случается.

Проблемы с wifi под линуксом я видел - с ноутбуками Dell 2008 года и предыдущими версиями Ubuntu. Но сейчас это проблема редкая (с новым Lubuntu, с Simply Linux и более-менее свежими ноутами я такой проблемы еще не видел). На случай если она в аудитории случается я вожу с собой три гарантированно совместимых с Linux USB-шных wifi-адаптера.

То есть описываемой вами проблемы у меня последние пару лет нет. А вот лишнее действие - "Так, а теперь все ставим у себя на компьютерах VMWare/Virtualbox" - это в моих условиях затрата, даже если оно будет ставится автоматом из .bat файла.

Насчет откатывания - там нечему особенно ломаться кроме редактирования кода примеров, но это решается одной командой git checkout .

*** Если вы пробрасываете USB устройство внутрь виртуальной машины - то проблемы с windows драйверами не будет. Будут использоваться линуксовые. ***

А что же тогда происходит у Дмитрия, он не новичок в этом деле - https://habr.com/ru/articles/754262/comments/#comment_25856696

Я последний раз наблюдал проблемы с wifi месяц назад - ведь новые чипсеты выходят, а поддержка хуже чем в windows практически всегда. Конечно, можно и адаптеры возить.. Но зачем? Виртуалку можно раскатать вообще с одной флэшки, времени это займет немного и будет полностью автоматизировано. При этом студенты смогут продолжить пользоваться инсталляцией даже когда вы уедете. Ведь Вы не будете им удаленно администрировать их инсталляции линуксов?

А что касается Дмитрия - без технических деталей все сводится к эмоциональному обмену личными предпочтениями. А от него никаких подробностей нет совсем. Эмоционально же - не вижу проблем с windows, если человеку она удобнее, а Virtualbox - бесплатен.

Все Ваши проблемы можно было решить без использования загрузочного диска с linux - просто эмоционально Вам этот вариант больше нравится. С эмоциями сложно спорить.

PS. Передайте знакомому, который работает в VMWare, что бы не ломал проброс USB! ;) Очень удобная и важная фича.

А что в 80 ГГб Vivado? Почему так много?

Ой, это вы у Xilinx спросите. Это мистерия - у Altera было достаточно несколько гиг, хотя она тоже выросла после покупки Интелом. Наверное из-за IP блоков, high-level synthesis, ML и ненужных большинству аппаратно-программных платформ связанных с Zynq.

Проброс может и работает, а вот Quartus с USB Blaster'ом через этот проброс у меня не заработал. А тратить время чинить это, занятие странное, так как все равно основная ОС это Linux. Если кто сделает и статью про это напишет, будет здорово. Плюс виртуалки в том, что она позволяет держать несколько образов не смешивая, но как оказалось проще внешний диск цеплять, чем с виртуалкой воевать.

Может проблема что бластеру надо изохронный режим? При этом не до всего софта виртуализации это доходит.
Ну там — не зря ж у VMWare https://docs.vmware.com/en/VMware-Workstation-Pro/17/com.vmware.ws.using.doc/GUID-54FB8AA7-282B-4FB0-BB46-F0EBBF58A3E5.html — хотя казалось бы ну очевидно ж.


А Hyper-V разве вообще когда то умел в проброс?

А Hyper-V разве вообще когда то умел в проброс?

вроде бы завезли, но тут нужно понимать что версии в разных номерных ОС Windows отличаются между собой, а еще отличаются в варианте для Server и Desktop. Сейчас пробросы завезли, но я не скажу что это удобно, на мой взгляд KVM + QEMU/virt-manager или Proxmox в разы удобнее и больше опций.

Нет. Только сторонним ПО usb via LAN.

Проброс USB в виртуалки - штука занятная. Оно во многих виртуализаторах декларируется, но работоспособность не всегда соответствует ожиданиям. Флэшку, конечно, завсегда пробросить можно, а вот что-то посерьезнее может озадачить. Лично не раз сталкивался с разными случаями.

Например, USB ТВ тюнер. USB 2.0. Заработало в Virtualbox только после появления версии с поддержкой 3.0 и только в режиме 3.0 (что требовало установки пакета расширееия, а у него лицензия уже не такая свободная). При настройках виртуалки с USB 2.0 не работает до сих пор даже на актуальной версии.

Оно заявлено да, но всякие отладчики, rs232 переходники и такое прочее могут работать не так как ожидается

FT232RL, CH340, CP2102 - все работают штатно даже на любых скоростях.
ST-Link тоже без проблем во всех режимах.

Парочку принтеров и сканеров ещё подключал. Только со сканерами кое-какие проблемы были, но с ними всегда что-то не так.

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

Возможно, мне просто повезло...

Так вот кто виноват в том, что в Hyper-V так и не осилили проброс USB - Ваш приятель! Расскажите ему, что VMWare умела это делать 10 лет назад, пусть ему будет стыдно.

Вообще-то он сейчас работает в VMWare. И согласен со мной, что виртуалка = дополнительная возня по сравнению с вставлением готового SSD. Безотносительно USB.

С Ваших слов выходит, что он в Microsoft не смог реализовать проброс USB, ушел в VMWare и работая там утверждает, что виртуалка - это дополнительная возня. Выглядит не очень впечатляюще для человека, работа которого должна заключаться в том, чтобы виртуалка работала максимально удобно.

Особенно учитывая, что VMWare такой сервис (простой проброс USB) предоставляла еще много лет назад. Теперь переживаю - не поломают ли его "эффективные менеджеры" из Microsoft!

К сожалению, внешние железки по USB могут вести себя некорректно при виртуализации. И чем нестандартнее железка, тем больше вероятностей наткнуться на неразрешимую дичь. При чём проблема может быть как со стороны системы, так и драйвера, так и системы виртуализации.

А могут и не вести. Я активно этот функционал использую и проблем не испытываю.

UFO just landed and posted this here

Если использовать отдельный PCI-E контроллер USB, то можно попробовать )

Hyper-V вроде как замена Microsoft Virtual PC, который проброс USB умел. И мне кажется, что наврятли они не осилили перенести этот код оттуда) Я всегда думал, что у них такой концепт - Hyper-V серверный продукт и они хотят, чтобы одна машина не была привязана к физическому серверу. т.е. она могла автоматически подниматься и запускаться на разных физических серверах, что будет проблематично, если она будет привязана к каким-то аппаратным устройствам на физических серверах. Поэтому Микрософт на вопросы пробросов USB в Hyper-V отвечали - пробрасывайте через сеть сторонним ПО и не делайте нам голову.

WSL2, который они активно продвигают - это не серверный, а локальный сервис. И нежелание пробрасывать USB в него со стороны microsoft выглядит как непрофессионализм и дуболомная упорость "эффективных менеджеров".

Да, у VMWare на ESXi/VSphere проброс USB работает отлично и мной лично активно используется (как и SR-IOV), ровно поэтому никакого Hyper-V я никогда не допущу - ибо в MS менеджеры лучше меня знают, что мне нужно, а это недопустимо.

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

У VMWare эта серверная технология прекрасно работает на серверах (проброс USB). А как иначе? К примеру у меня есть аппаратный ключ для коммерческого продукта, как его использовать в виртуальной среде?

Ну например, что есть несколько физических серверов (возможно даже в разных датацентрах), настроена репликация виртуальных машин и любая виртуальная машина может быть поднята на любом сервере, хоть на другом конце света и она даже не поймет этого и это никак не отразится на работе сервисов, что на ней крутятся. USB в этом случае пробрасывается через аппаратное USB-TO-NETWORK устройство (или отдельным сервером с софтом для проброса) со своим IP доступным отовсюду (VPN там всякий для безопасности и т.д.). И компания хочет продать идею независимости виртуалок от физических серверов своим клиентам. Но любой функционал связи виртуалки с физическим сервером идею портит, потому его и не делают. В VBox/VMWare/Qemu и звук прекрасно работает, а в Hyper-V нет (только через RDP, пока открыта сессия), подозреваю по той же самой причине. Через сеть ребята, все через сеть)

Если линукс используется на одной машине с виндовсом надо в линуксе вот такую команду не забыть

sudo timedatectl set-local rtc 1

Без нее вы при загрузке линукса получите неправильное время, если он его синхронизирует с сервером, то пропишет в uefi UTC время, и тогда кривое время будет уже при возвращении обратно в винду. А если не синхронизирует, то можно словить такие прикольные артефакты как например коммиты в git датируемые будущим временем.

Да, точно, я постоянно на это нарываюсь, особенно во время путешествий и использования нескольких дистрибутивов линукса с загружаемых SSD. Спасибо!

Спасибо большое, а то я всё собирался поискать, как это проблему пофиксить, но каждый раз забивал.

Имхо зависит от того, какая система является основной - в той и меньше изменений делать и править в неосновных. Если вы линукс подключаете к 100500 разным виндовым компам по USB, то очевидно что править в линуксе надо, потому что это сделать надо будет 1 раз а не 100500. Ну и субъективное мнение - линукс более устойчив к подобным шаманствам.

Вы серьёзно считаете, что localtime в RTC - это нормально? И все ваши установленные ОС имеют актуальную базу часовых поясов и переходов на летнее время, которая обновляется одновременно? Проблема исключительно винды т.к. даже UEFI знает про смещение +00:00.

Мне в целом вообще пофиг что там в RTC лишь бы работало везде нормально. Ну точнее в идеале я бы хотел чтобы ОС вообще не могли туда писать никак, и там бы всегда было только то что я сам указал (или по умолчанию) в настройках uefi. А операционки бы просто сохраняли бы себе на диск смещение от того что в RTC на основе синхронизации времени с сервером.

Причем тут настройки специфичные для HP Proliant Gen10 я не совсем понял. В моем ноутбуке например нет настроек таймзоны. Если я там буду настраивать время, то выставлю локальное, потому что UTC считать нет никакого желания, это неочевидно.

Дело не в одновременно / не одновременно, а в том что обе системы переведут время на час, т.к. они не знают что это сделал кто-то еще

И все ваши установленные ОС имеют актуальную базу

Все мои установленные ОС ходят на сервер и берут время оттуда

NTP не поможет, если база tzdata (или что там в Windows) устарела.

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

localtime со старой таймзоной при синхронизации сломает время для всех систем на хосте, а в случае с UTC - нет.

Обе системы в UTC = всегда верное время, обе системы в RTC = скачки, если в вашем поясе переводят время

Ну скачут и скачут, автоматически и прозрачно и незаметно для пользователя, пока от этого нет побочных эффектов пользователю все равно. Чтобы потешить перфекционизм и если систем действительно только две, то можно и utc настроить, как угодно, и при заходе в настройки по F12 видеть там черт знает что вместо времени. Но перечитайте сообщение - если человек с линуксом на usb приходит в организацию где 1000 компов с виндой, то что ему, выдергивать админа и с пеной у рта доказывать что utc это правильнее и он срочно должен поправить реестр на всех 1000 компах? А практический то смысл какой в итоге?

Ну скачут и скачут, автоматически и прозрачно и незаметно для пользователя

нет, речь про то, что время может быть переведено более одного раза (одна операционная система не знает, что другая уже переводила)

Есть ли какие-то подводные камни, винда или виндовый софт от такого не станет глючить?

Спасибо. Периодически искал, как эти фокусы пофиксить, да ничего не находил. Надоело каждый раз на винде вручную синхронизировать время (линукс то сам всё делает)

UFO just landed and posted this here

вот да, хотелось бы увидеть какой-то измеримый параметр нелюбимости линукса вслед за утверждением

Anecdotal evidence. Из группы в 15 продвинутых учеников московской 57 школы и подобных ноут с линуксом был в 2019 году у двух. Вой преподавателей в фейсбук-группах про образование "на линуксе не работает AutoCAD". Мнения преподавателей определенных вузов. Итд.

UFO just landed and posted this here

Справедливости ради, он действительно не работает.

UFO just landed and posted this here

Вой был в том числе от учителей средних школ. Что такое есть в программе средних школ, для чего нужен полный AutoCAD и чего нельзя заменить opensource аналогом?

а зачем в школах линукс? Учителя все привыкли к винде, дети тоже. Всем так проще, тем более дети вряд ли потом встретятся с линуксом, а с виндой и офисом - почти гарантировано, в том же вузе, например. Вся система в РФ(да и в мире) заточена под винду

UFO just landed and posted this here

дети же не только смартфонами и планшетами пользуются, к 5 классу уже многие осваивают пк/ноутбуки. Те же презентации сделать, реферат распечатать и т.д

UFO just landed and posted this here

можно заменить, но зачем? Если у пользователей(школ) будет такая потребность - сами перейдут. Пока, видимо, нет

UFO just landed and posted this here

Вы в курсе, что американских школах самый популярный компьютер - не винда? И не мак?

"Детей жалко"

Контрольный вопрос: в элитных частных школах тоже самые дешёвые компьютеры?

P.S. А когда-то на Apple II детей учили новейшему Object Pascal

Мои трое детей учились в Homestead High School - школе в которой учились Стив Джобс и Стив Возняк, и в которой и сейчас учатся дети многих сотрудников Apple, посколько она находится в Купертино. И да, там тоже стандартный компьютер - хромбук. В начале урока вывозят телегу с хромбуками и всем раздают.

Бог с ними, "с хромбуками". По крайней мере, на время.

На "Луна-25" MIPS R4000 или "однофамилец" ?

Мне тоже было интересно, стоял ли на Луне-25 MIPS-based процессор из НИИСИ или из НПО Элвис (они не MIPS R4000 - [тут следует лекция про разницу архитектуры и микроархитектуры - см. https://habr.com/ru/articles/664740/ ]), но человек из НИИСИ сказал, что там стояло не из НИИСИ.

Я детей учу, им пофиг, что Линукс, что Винда. Они мышкой не умеют пользоваться

Вы их учите именно с клавиатурой работать и консольными программами, поэтому мышкой не умеют пользоваться?

Да просто с компьютером. Иногда приходится тачпад выключать, так сильна привычка пальцем возюкать.

Я учу программированию, поэтому без мыши никак.

UFO just landed and posted this here

Ох.... Если честно, а смысл? если нет AutoCAD и размер А3, то быстрее на кульмане....

За AutoCAD не скажу, а на занятия по 3DMax у меня ребенок ходил, можно конечно сказать , что Blender это правильнее, но спроецируйте это все на 6 летнего ребенка. Ситуация ровно такая же как и с SSD, реализуют что проще и в перспективе полезней.

ноут с линуксом

По личному опыту ставить линукс на ноут идея довольно неудачная, ресурс батареи уменьшался в 1.5-2 раза в сравнении с виндой. Долго гуглил в свое время эту проблему, но толком так и не решил.

С тех пор Linux ставлю только на ПК в режиме дуалбута.

От ноута зависит. На моем HP 445g8 примерно такое же время работы как и на Windows 10. Из настроек только в powertop все Tunables включил и в grub в параметры ядра acpi_osi от win10 прописал. Вот бы ещё оно в выключенном состоянии по 15% батареи в неделю не жрало, но это под всеми ОС происходит.

Но таки да, необходимость подбирать железо под удобную мне ОС напрягает.

Вот бы ещё оно в выключенном состоянии по 15% батареи в неделю не жрало

Скорее всего включена опция зарядки через USB-порты и в одном из них болтается, например, usb-коннектор от мышки. По крайней мере у меня так было.

Все USB charging и wake-on-lan`ы выключил в bios в первую очередь. В портах USB тоже ничего нет.

Интересное наблюдение, но это наверное зависит от дистрибутива и ноута

Дядюшке Столлману в сети приписывали одно высказывание - про то, что софту достаточно быть свободным, но необязательно быть качественным. Не знаю, говорил ли он так на самом деле, но с некоторыми вещами, увы, оно именно так и происходит. Для обучения GNU/Linux и доступного свободного ПО более чем достаточно, но если речь идёт о ежедневной и профессиональной работе, то в определённых областях тут может быть больно. Фотографу, например, прямая дорога на Windows или Mac. И я даже не знаю, что хуже: выбирать между нестабильностью и тормознутостью Darktable и ужасным интерфейсом RawTherapee (GTK 3 и 4 это просто победа дизайнеров над здравым смыслом, на 13-дюймовом экране особенно радует), или как одна знакомая через другого знакомого в Дубае покупать лицензию на Lightroom, чтобы потом повторить этот квест через год, ибо подписка и рабство. Вариант дописать нужное самому интересен, но явно не для всех, т.к. минимум требует достаточной квалификации.

А кто не любит-то?

Мне кажется те организации, где вместо винды ставят астру или другой спец. дистрибутив Линукс.

В России не любят Линукс. Студенты и корпорации всячески отлынивают его использовать,

это прям очень удивляет. Ну как так можно то, сколько ещё будут жрать кактус?

Так они его и не жрут, а всячески отлынивают от его поедания. Написано же.

Зачем большие по физическому размеру SSD?

Есть же ещё m.2. У меня на таком ubuntu стоит

А как они по цене по сравнению с SSD? В одном экземпляре - все равно, но если нужно купить на всех участников семинара, это небось кусается. Ведь SSD ниже $10 штука, даже вместе с адаптером ниже $15.

Да, по цене они, конечно, проигрывают. Плюс еще бокс докупать надо. Но, как вариант, можно поискать на авито. Там цены примерно сопоставимы.

Из минусов - греются. Нужен хороший кейс. У меня кучка и sata, и m.2 дисков ssd. Саташные еле теплые, m.2 все горячие. Производительности сата достаточно, ибо по usb саташный диск даст в пике 500-600 мб\с, а m.2 - я видел на usb3.1 typec-c под 990 мб\c, но при этом, повторюсь, сильнее греются

На самом деле, если SSD то даже USB2.0 хватает для нормальной работы.. Скорость доступа к рандомным блокам решает в первую очередь)

На стареньком ноуте проверял в том году (Acer ASPIRE 5741G), SSD через USB2.0 + WindowsToGo (Win10) + MSVS2019 гораздо лучше. чем Win10+MSVS2019 на hdd через sata3 ) И нет никакой существенной разницы уже если SSD воткнуть напрямую (ну загрузка может чуть быстрее выходит)

м2 тут уже только из за формфактора можно было бы взять, любого SSD хватает)

Примерно одинаково. И сами ssd, если m.2 sata, то одинаково по цене с 2.5" sata, и коробочки есть недорогие. Вот мой безотказный JEYI i9 GTR — usb3.1 gen2, rtl9120b, массивный фрезерованный люменевый корпус с термопрокладками, нормальная крышка под винты. Внутри довольно жарковатый терабайтник 970 EVO Plus, которому в таком корпусе вполне комфортно.

А вы сравниваете только большие диски (типа терабайт)? Просто m.2 на сто с чем-то гигабайт не нашел (пока сильно не искал), а SSD на 120 GB можно найти меньше чем за $10 с адаптером за $3 с чем-то - то есть вместе $15. Даже если минимальная цена на SSD с адаптером $15, а на m.2 $30, то для скажем 200 учеников Школы Синтеза (столько уже записалось и столько может быть после естественного отсева) разница может быть $3000, что не то чтобы много, но нуждается в обосновании.

В каком месте m2 перестал быть SSD ?
Не нужно путать 2.5" SSD и M2 SSD.

O!!! Только вчера отлаживали поведение bash-скрипта под WSL. WSL, в отличие от Cygwin и MinGW, в переменной OSTYPE пишет что он якобы честный Linux, после чего мой скрипт не находит директорию у установленного Intel FPGA Quartus, которая в Windows называется не так как в Linux:

https://github.com/yuri-panchul/basics-graphics-music/blob/main/scripts/steps/00_setup_intel_fpga.source.bash

    if [ "$OSTYPE" = "linux-gnu" ]
    then
        quartus_bin_dir=bin
    elif  [ "$OSTYPE" = "cygwin"    ]  \
       || [ "$OSTYPE" = "msys"      ]
    then
        quartus_bin_dir=bin64

Правда Quartus я как-нибудь обойду (скажем с помощью uname -r ). Но вот будет ли работать под WSL OpenLane?

Вроде должна быть переменная, которая позволяет определить, что это WSL. Можно от этого отталкиваться и соответственно указать корректный путь

Что-то типа

if [[ $(grep -i Microsoft /proc/version) ]]; then
    echo "Bash is running on WSL"
fi

При использовании виртуалок и WSL для работы с железом часто возникает одна и та же проблема. Многие железки при перепрошивке или смене режима работы меняют USB ID - типа это другое устройство. И даже если оба варианта пропишешь в "автоматически прокидывать в виртуалку", всё равно между подключениями устройству успевает прилететь какой-то пакет от хоста, и оно начинает инициализацию с хостом. В результате в виртуалку устройство попадает в состоянии "враскоряку" и если драйвер не умеет его в этом состоянии сбросить и начать заново - всё разваливается.

Нашёл это экспериментально. В момент перезагрузки смотрю логи хоста - а устройство там типа подключалось!

Просто в виртуалку надо пробрасывать не USB устройство, а PCI устройство USB хост-контроллера.

Synopsys Design Compiler / IC Compiler и Cadence Genus / Innovus

Система Altium Designer не является аналогом данных продуктов?

В Altium Designer не проектируют микросхемы

С Win11 совсем трэшак - оно хочет подписанных драйверов

Как говорят в Linux-среде, с разморозкой, это обязательное требование для 64-разрядной Windows уже лет 15, как минимум, ещё с Windows 7, если не раньше.

На своей машине можете подписать самоподписанным сертификатом. Если это драйвер режима пользователя, то никаких изменений в настройки Windows вносить не нужно. Если это ядерный драйвер, то придётся перевести Windows в тестовый режим, поскольку на этапе загрузки локальное хранилище сертификатов ещё не доступно.

А, я вспомнил, штука с подписанными драйверами возникла не из-за Win11, а потому, что Intel в какую-то версию Quartus в 2021 или 2022 году вставил неподписанные драйверы или что-то такое. Но короче в ночь перед полетом в Бишкек в 2022 году я обнаружил, что на Win10 все работает, а на Win11 нет.

Intel в какую-то версию Quartus в 2021 или 2022 году вставил неподписанные драйверы

Т.е. всё разрешилось? И Windows реабилитирован?

Т.к. достаточно взять ту версию ПО, где соблюдается элементарная дисциплина разработки?

Чтобы найти эту версию, нужно было долго гуглить и искать патч на интеловском сайте. С линуксом гемороя было меньше. В любом случае, под Windows не идет OpenLane + с любой версией приходится обновлять драйвер USB Blaster-а. После этого бишкекского семинара я больше на локальные windows-компьютеры расчитывать боюсь.

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

А вообще, это просто такая политика - предельно усложнить процедуру сертификации драйверов ядра, чтобы упростить себе обработку жалоб "у меня ваша винда падает в BSOD". В плане же безопасности для пользователя это не особо эффективно, ибо среднего пользователя нетрудно уговорить перезагрузить систему с запретом проверки подписи, что даст возможность установить несертифицированный драйвер.

В России не любят Линукс

Это не совсем правда. Я с середины 80-х годов, ещё в Советском Союзе, предпочитаю Unix-системы, а с 90-х Linux.


читатель достаточно заинтригован, чтобы войти или продолжить свое путешествие по мирам русских Линуксов

Своё путешествие по миру русских (наверное всё же российских) Линуксов я закончил тем, что у меня сначала стояла Mandriva, а теперь Mageia-8

Ну знаете, лично я еще в 1985 году, когда ездил на трамвае в школу в Киеве, почитывал книжку "Инструментальная мобильная операционная система ИНМОС" (это был такой советский Unix). Отдельные случаи и узкие прослойки ничего не доказывают.

Был ещё советский Демос и МОС ЕС:
image


Отдельные случаи и узкие прослойки ничего не доказывают.

Не совсем уловил насчет "не доказывают"

Ну наличие тридцати программистов в кооперативе Демос в Москве 1990 года никак не доказывало, что все 300 миллионов советских людей предпочитало Unix вместо игры Digger под MS-DOS.

А в чём проблема просто установить Linux на рабочую машину? Первое место у этого варианта в голосовалке, с ~40% голосов на данный момент, как бы намекает...

Российские линуксы кстати использовать для ECAD систем достаточно странно. За других не скажу, но продукты Cadence официально поддерживают ограниченный набор дистрибутивов (RHEL и CentOS определённых версий), российских дистров среди них очевидно нет.

*** А в чём проблема просто установить Linux на рабочую машину? Первое место у этого варианта в голосовалке, с ~40% голосов на данный момент, как бы намекает... ***

Большинство студентов и преподавателей не хотят. Переубедить трудно даже единицы, а речь идет о сотнях человек.

*** Российские линуксы кстати использовать для ECAD систем достаточно странно ***

Жирный плюс: локальный суппорт от Базальта, когда что-то не работает. RHEL в России поддерживать не будут.

*** продукты Cadence официально поддерживают ограниченный набор дистрибутивов (RHEL и CentOS определённых версий), российских дистров среди них очевидно нет. ***

Cadence на широких курсах сейчас все равно использовать в России нельзя. Но тулы для FPGA, открытые тулы для ASIC (Open Lane) и всякие Icarus-ы идут и на российских дистрибутивах (с нюансами - см. коммент про Astra Linux, RedOS и ROSA в посте).

Я не совсем понимаю Ваши проблемы.

Например, на какой странице УК написано, что что-либо применять нельзя?

И не являются ли данные запреты прямым ( и наглым) нарушением прав человека? Т.к. сегрегируют людей по странновому ( фактически расовому) признаку?

В текущих реалиях нужна сертификация от ФСБ. Притом каждую новую версию сертифицируют заново.
Поэтому во всех около государственных конторах сейчас дополнительный геморрой.

Одна лицензия на Cadence Xcelium стоит десятки тысяч долларов в год. Образовательные инициативы недоступны, т.к. представительство Cadence в России закрылось больше года назад, теперь тулы и саппорт напрямую не достать, только через третьи страны (или по ещё действующим контрактам).

Можно пиратить, но это статья УК. Подставляться под это довольно тупо.

У меня нет белого пальто и я не порицаю, если кто-нибудь, сидя у себя дома, будет пользовать Cadence и Synopsys с ломаными лицензиями на миллион долларов. Если суммировать Synopsys Design Compiler, IC Compiler, PrimeTime PX, VCS + Cadence Genus, Innovus, Xcelium и Joules - то столько и получится.

Но одно дело - сидя у себя дома, а другое дело открыто рекламировать курсы на 300 человек в 14 городах, основанные на поломанных лицензиях. Я не знаю какие могут быть последствия для связаных с этим российских вузов и компаний.

Но даже если последствий не будет - зачем? Основы маршрута RTL2GDSII, симуляции на уровне регистровых передач, логического синтеза, статического анализа тайминга - все это можно выучить с помощью открытых тулов: Icarus Verilog, Open Lane и других. Совершенно легально, и это даже можно делать в партнерстве с международными вузами и компаниями.

попробуйте загрузить Windows, пойдите в Settings и найдите там (Микрософт это спрятал, но через поиск находится) "Advanced Startup". Вы увидите кнопку "Restart now". Нажмите ее:

Чтобы попасть в это меню достаточно держать shift когда вы выбираете «перезагрузить» в меню «пуск».

О! знакомые обои от Влада Герасимова.

UFO just landed and posted this here

Я пробовал российскую копию Mint под названием Green Linux и SSD работал только на том компьютере, на котором была инсталляция.

Что касается нероссийких Canonical / Ubuntu, то они российские курсы поддерживать не будут, а с EDA тулами, программаторами, докерами итд постоянно что-то нужно обходить, так что суппорт тут для курсов на сотни человек - это не роскошь, а жизненная необходимость.

UFO just landed and posted this here

У меня с 1980-х фобия возить с собой по самолетам двадцать HDD с двужущимися частями. Или вы про форму адаптера (коробочку)? А зачем? У SDD и так пластмассовый корпус есть.

Это не простая коробочка, она с мозгами. На ней можно выбрать нужный образ и она прикинется приводом. А hdd там или ssd не важно. (правда первоначально это все же IODD)

«Швейцарский нож»‎ инженера дата-центра: Zalman ZM-VE500 / Хабр (habr.com)

Ну это наверное дороже чем SSD с адаптером (а мне это нужно для каждого участника). Плюс нужен один образ, не несколько.

Я подобную коробочку приобрел еще 9 лет назад за 1700р. — Zalman ZM-VE300. На нем у меня — большая куча дистрибутивов ОС (Виндовсы, Линуксы, и даже ДОС) и ЛайвСД; использую довольно часто.

Наверное речь о том, что данная железка умеет симулировать CD-ROM из iso, на нее набросанных. Правда в конкретно Вашем случае не совсем понятно, как это использовать.

Если как обычный внешний HDD, то можно взять коробочку покомпактнее и подешевле.

Если для загрузки с live cd, то это нужно готовить специальный образ с интегрированными вашими программами или устанавливать их при каждой загрузке, причем на диск в ОЗУ (десятки гигабайт не установишь).

Есть, правда, у того же simply вариант загрузки live с сохранением сеанса, но его я не пробовал. Если в этом режиме можно ставить новые программы на допрлнительный раздел на этом же или другом внешнем диске, то можно использовать. Если нет, то и толка особого никакого нет.

Меня вот что удивило, почему образ распространяется только по обращению, а не скажем в виде торрента (=магнет-ссылки)?

В Канаде Линукс вообще не знают, ну, кроме серверных админов и подобных ребят. Когда я говорю, что разбираюсь в *Никс, на меня смотрят, как на колдуна.

Как в Канаде могут не знать Линукс, если в школах используеются хромбуки с Linux-based ChromeOS:

Taк Андроид тоже на Линуксе. Все пользователи смартфонов знают Линукс? Айфон скорее всего тоже на никсах.

iOS от macOS отличается (кроме намного более серьезной залоченности) не особо сильно. Так что — mach микроядро, часть API по мотивам FreeBSD, свой GUI.
Ядро собственно даже открыто https://github.com/apple-oss-distributions/xnu (на mac'ах даже можно собрать и загрузить свое и даже работать будет).
Но вот даже разработчикам под iOS эти детали не особо важны.

UFO just landed and posted this here

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

Я так пробовал аудиокниги записывать. Потом, когда вдруг обнулилась третья_глава.wav, запустил чек диск... Просмотрев отчёт по ошибкам, эксперимент свернул.

У меня пока что сбоев с SSD не было. А у вас именно SSD или флашка? Или вы с SSD грузите? Какие подробности?

SSD на 128 формата msata от Кингстона в китайской коробочке за 300р.На диске - Win7 и куча музыкального софта. Хорошие коробочки, кстати, у меня таких целая пачка под разные задачи.

Воткнуто в ноутбук без хаба. Во время работы постоянно идёт чтение-запись. По лампочке на коробке и особенно по писку дросселя видно, что при активности других usb-устройств, в частности, звуковой карты, или при шевелении провода ровный ритм передачи данных нарушается. Работая за ноутом, невозможно обеспечить покой кабелю. Микро пропуски на записи тоже встречались, потери не более доли секунды. Но это может быть особенностью работы Cubase, который рассчитан на студийное железо, а не на таких домашних экспериментаторов.

раздолбанный USB порт прекрасно может быть и на студийной аппаратуре

Воткнуто в ноутбук без хаба. 

не, у меня хаб с питанием как раз для таких случаев - виртуалки крутить, внешние винты туда-сюдамать, и чтобы ноуту порт не расшатать

А сам хаб не тудым-сюдым'ается?)

Есть ли tool(a) которая по Verilog коду может синтезировать логическую RTL схему в виде рисунка на языке Graphviz?


*.v ->SomeUtility.exe ->*.gv

Логический синтез - это и есть превращение кода в граф из логических элементов. Формат (Graphviz или нет) - это уже детали. Если этого нет, это наверняка не очень трудно написать. Взять за основу RTL viewer какой-нибудь, с Yosys или Verific как фронт-енд.

Насчет Quartus и Vivado я уже не помню, а вот Synopsys Design Compiler и Open Lane - этим тулам можно сказать вывести граф прямо в виде модулей примитивов на верилоге. Его можно отпарсить и построить картинку.

А какая утилита по файлу логической электрической схемы RTL в виде графа разводит физическую топологию кристалла на кремнии: геометрическое место блока, проводники, переходные отверстия, пады, отдельные транзисторы, диоды и прочее?

Synopsys IC Compiler, Cadence Innovus, Open Road. Но на индивидуальные транзисторы в цифровой логике они не переходят - они разводят на уровне ячеек библиотеки ASIC (ASIC standard cell library). Ячейки реализуют примитивы типа and, or, их комбинации, D-триггеры и простейшие двухвходовые мультиплексоры.

Насчет Quartus и Vivado я уже не помню,

Ну видимо в RTL разработке уже всё стало как же как и в программировании микроконтроллеров в каком-нибудь IDE типа IAR в начале 200x.

Разработчика сажают перед GUI(ней), он пишет в ней Verilog код, нажимает мышкой зеленый треугольник вверху, и на выходе получает бинарный файл для TSMC.

А то какой путь проходят *.v файлы от написания до получения барабана с намотанными на него ASIC(ами) уже никого не интересует.

Так что ли?

Не совсем.

Во-первых, есть целая специализация physical design engineer, которые строят floorplan (план начального размещения) и решают всякие проблемы тайминга (например ставят другие ячейки, до которых тул автоматически не додумался).

Во-вторых, и для front-end дизайнера, который пишет на верилоге, нужно думать о задержках внутри такта - например по результатам отчета от static timing analysis изменить структуру конвейера, чтобы вписаться в такт. В простых случаях это умеет делать тул (automatic retiming), но чаще это делается вручную.

Я вот только одного не пойму, почему нельзя один раз создать виртуальную машину (предположим в virtualbox) поместив ее жесткий диск на usb ssd, и подключать его на разных компах. Да, на компах придется устанавливать virtualbox, что бы работать с этой виртуалкой, но это всяко надёжнее, проще и быстрее описанных в статье плясок с биосом и usb хабами. Как по мне, автор просто усложняет жизнь себе и, соответственно, студентам.

Не вижу ничего удобнее в вашей схеме. В моей схеме всем выдаются ssd, они втыкают, нашимают при загрузке компьютера Esc, входят в BIOS, нажимают на boot от USB, и все - работают. В некоторых случай чуть длиннее за счет загрузки через advanced startup.

В вашей схеме больше шагов: исталляция virtualbox, инструкция как с ним работать, да оно может еще и не работать - см. коммент https://habr.com/ru/articles/754262/comments/#comment_25856696

Sign up to leave a comment.

Articles