Pull to refresh

Comments 48

Я считаю, что вообще нужно запрещать регистрировать патенты на еще не разработанное. А то придумают идею, которую пока не способны реализовать, а кто-то другой способен. И этот кто-то другой уже не сможет разработать, т.к. эта идея уже запатентована и либо покупай лицензию (если вообще продадут), либо отказывайся от нее.
А если вдруг завтра вам приснится технология дешевого термоядерного синтеза, причем во всех деталях, но реализовать ее можно будет только лет через 10, скажем? Невозможно такие чистые материалы обеспечить или техпроцесс или еще что-то, неважно… Но вы честно опишете всю идею и опубликуете ее и получите даже восторженные отзывы.
А через 10 лет кто-то начнет зарабатывать на ней миллиарды. А вы — нет.
Что вы будете чувствовать при этом?
Учитывая особенности мира, в котором мы живем, намного вероятнее, что завтра кому-то приснится кубик с кнопками на боку, и после этого на следующие 10 лет для изготовления девайсов в форме кубика все будут должны платить этому товарищу лицензионные отчисления. Поэтому лично я обеими руками за запрет патентования идеи. На одного изобретателя, который в таком случае не станет миллиардером, зато подарит идею всему миру, приходится легион патентных троллей.
А здесь очень тонкая граница.
Вот например: форма iPhone на самом деле — это прямоугольник со скругленными краями, но благодаря ей — телефон узнаваем сразу и с расстояния, это играет компании на руку, это узнаваемый бренд. С точки зрения компании это нормально, что она хочет его защитить. Потому что они вбухали дофига сил чтобы это стало узнаваемым брендом.

Кто должен определять — можно это патентовать или нет?
Дело в том, что количество «вбуханных сил и денег» не является критерием для определения, патентовать или нет. Есть понятие «промышленный образец» у нас, есть «design patent» у них, и с точки зрения здравого смысла под этим механизмом защиты должен быть прямоугольник со скругленными краями (sic!), но с серебристой металлической гранью, нижней и верхней поверхностью из черного стекла, и на верхней поверхности дисплей и внизу посередине черная кнопка. Вот такая штука, детально описывающая одно конкретное изделие, имеет право на существование. И только при наличии реально выпускаемого устройства.
А то, что крупные корпорации вбухивают огромные средства на разработку дизайна — это вообще не показатель стоимости разработки дизайна. Это просто показатель размеров их бюджетов и общей раздутости рынка дизайнерских услуг.
Отчасти я с вами согласен, конечно — патентовать цифру «8» нельзя, это абсурд. И спецификация должна описывать более конкретное устройство — тоже согласен.
Но я хотел донести мысль, что количество вложенных средств для компании является стимулом защищать свои усилия, чтобы эти средства приносили прибыль самой компании, а не всем вокруг.
Никому не нужен был прямоугольник с идеально скругленными краями и не было вокруг него никакого фетиша раньше — 10 лет назад мимо девайса такой формы прошли бы все равнодушно.
Но Apple вложила огромные деньги на рекламу и вбивание в мозги юзеров, что это очень крутостильно и теперь все считают что это вершина дизайна и даже холодильник такой формы будет продаваться гораздо лучше.
Но почему компания должна делать косвенную рекламу чужому холодильнику за свои деньги (большие деньги!)?
Вот это и является стимулом для нее патентовать форму.
Я совершенно не оправдываю патентных троллей — я также считаю что они тормозят прогресс и не дают развиваться. Но порой бывает трудно отличить их вот так просто.

Я понимаю, что для потребителя эти аргументы могут быть не совсем близки, но вы попробуйте взглянуть на эту позицию как, например, директор корпорации?
Я с вами полностью согласен в том, что любая компания имеет право как-то защищать свои вложенные средства. Это их инвестиции, и все хотят получить доход от инвестиций. Но я считаю, что патентное законодательство не должно бездумно становиться на сторону патентодержателей (как действующих, так и потенциальных). Сейчас наблюдается явный перекос в этом направлении.
Если сейчас убрать механизм патентования прямоугольников, точнее, параллелепипедов, :) что по факту потеряет Apple? Да по сути ничего. Точное копирование айфона по-прежнему будет незаконным, а параллелепипед от Самсунга или от китайского noname — это все равно другой продукт, с другим рекламным бюджетом, и по сути, с другой аудиторией. Если убрать механизм патентования абстрактных идей, вроде «методов печати через Интернет», то тем более, кроме патентных троллей, никто не пострадает. Наоборот, это будет стимулировать здравую конкуренцию между разработчиками практических реализаций, и инженерную, и дизайнерскую.
Я не специалист по технологиям дешевого термоядерного синтеза, возможно там все проще, но при попытке реализовать любую идею в жизнь, вы столкнетесь, как бы это сказать попроще — с реальностью (ну не возможно все предусмотреть на бумаге). И вот кто-то вбухивает сотни миллионов в этот проект, ученые проводят многолетние исследования, доработки и пр… И тут появляетесь вы со своим патентом. Угадайте, кто Вы?
Не, там всё просто. Берете ёмкость в виде бублика, наматываете вокруг неё магнитные катушки, внутрь заливаете ведро дейтерия и трития, включаете электричество и хорошенько нагреваете до появления плазмы. И не забываете снаружи подливать жидкого гелия, чтобы катушки были в состоянии сверхпроводимости.
То есть, даже если вы изобрели саму технологию, но не можете сам организовать ее реализацию — вы не можете претендовать ни на что? А тот, кто просто пришел и стукнул мешком с деньгами об пол — может вернуть себе еще три мешка? Я правильно вас понял?
То есть, даже если вы изобрели саму технологию, но не можете сам организовать ее реализацию — вы не можете претендовать ни на что?
Вы не поверите — но это именно то, как должны работать патенты. Патенты без «действующей модели» теоретически вообще выдаваться не должны, но за последние лет примерно 100 об этом как-то забыли.

А тот, кто просто пришел и стукнул мешком с деньгами об пол — может вернуть себе еще три мешка?
Мешок сам по себе вряд ли заставит какую-либо идею работать, а так — да, если на деньги из этого мешка было уплочено, скажем, сотне учёных, чтобы они корпели код и заставили-таки аппарат «взлететь» — то вот за это вот и выдаётся патент, чтобы потом можно было получить три мешка. Ну а «не взлетело», значит «не взлетело» — мешок денег просрали и ладно.
Извините, но я вам не верю. Мне кажется что вы теоретизируете, но если бы сами попали в ситуацию, когда на вашем изобретении кто-то сделал состояние — тоже захотели бы себе долю.
Извините, но я вам не верю.
Что значит «не верю»? Вы можете с тем же успехом «не верить» в восход солнца или во вращение Земли. Это просто требование, это не то, что нужно (или можно) обсуждать. Reduction to practice просто утверждает, что «правильный патент» может достаться только тому, чьё изобретение реально работает. Если заявку на патент на одно и то же изобретение подаст сначала Вася, а через месяц — Петя, то у Пети — вполне есть шанс получить патент, если он докажет, что в момент подачи Петиной заявки у Васи ещё ничего не работало. Васю похлопают по плечи и скажут «молодец, конечно, да… но „почти работает“ — не считается». А до 1870го года патент вообще нельзя было получить не предъявив действующую модель патентному ведомству! То есть нужно было не просто чтобы изобретение работало «где-то там у меня в подвале», а чтобы патентные экзаминаторы могли сами лично убедиться в том, что ваше изобретение действительно работает!

Конечно кое-кому это было невыгодно и после долгих баталий эту систему таки отменили — но произошло это не «когда-то давным-давно», а, я извиняюсь, уже в XXI веке. Это отнюдь не значит, что «всё стало хорошо» — наоборот, это уже агония.
Мне кажется что вы теоретизируете, но если бы сами попали в ситуацию, когда на вашем изобретении кто-то сделал состояние — тоже захотели бы себе долю.
Фиг его знает, возможно. Но мои хотелки к делу отношения не имеют. Правда заключатеся в том, что если
вдруг завтра вам приснится технология дешевого термоядерного синтеза, причем во всех деталях, но реализовать ее можно будет только лет через 10, скажем?
то вы, увы и ах, не имеете права на патент.

Патенты выдаются только и исключительно на работающие изобретения — и, если задуматься, иначе и быть не может. Потому как в противном случаи патенты почти на все «серьёзные» изобретения принадлежали бы Голливуду. В фильмах какие только вещи, которые «можно будет только лет через 10» реализовать не показаны. Но, увы, все знают, что то, что там показано — это фикция, бутафория, ингра света и тьмы, так что на на патенты пока Голливуд не зарится.
Вы меня не поняли :)
Я имел в виду что не верю что вы на самом деле считаете что патенты не нужны для того, чтобы защитить идею.
Я на самом деле считаю, что патенты не нужны вообще. Несмотря на то, что сам вхожу в список людей, которые фигурируют среди авторов патентов.

Я просто вижу как вся эта конструкция работает изнутри и мне это активно не нравится. Изначально патенты предназачались для того, чтобы люди описывали как работает их изделие, а другие люди могли бы этим пользоваться через 20 лет, когда срок патента истечёт. Идея небесспорная, но, в принципе, разумная.

Сейчас же всё перевёрнуто с ног на голову: никто и никогда не смотрит в ту груду бумаги, которую порождает патентное ведомство. Кроме юристов. Которые пытаются превратить новые разработки в набор патентов и/или пытаются придумать как можно с кого-нибудь слупить денег за патенты и/или пытаются придумать как избежать того или иного патента. Избежать этой деятельности нельзя: если ты не будешь оформлять патенты, то тебе нечем будет «отбиваться» от остальных и ты быстро окажешься в состоянии, когда тебе нужно всем платить за всякую откровенную фигню, но к реальному выпуску реальных изделий всё это не имеет ни малейшего отношения.

Возможно в каких-то других областях (химия, фармацевтика) патенты и работают, я не знаю (не специалист), но в разработке ПО и во многих случаях в разработке железа — это кормушка для адвокатов и всё.
Ок, я вас понял, спасибо за объяснение.
Я совершенно согласен, что в такой реализации это все ужасно мешает, отвлекает и раздражает.
Тем не менее, идея патентов мне кажется достаточно справедливой в части защиты авторского права.
Но давайте не будем спорить, я не обладаю достаточными аргументами, а вам, кажется, эта тема слишком близка.

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

Краткий пересказ (если вы вдруг не знаете английского): современная патентная система началась не с того, что патенты ввели, а с того, что их отменили. До XVII-XVIII веков патенты раздавались королями кому попало и за бог знает что: владельцы исправно платили королю, а взамен получали монополию на ту или иную область деятельности. Что фактически привело к заморозке развития всего общества. После того как патенты отменили и оставили только потенты на новые, действующие, изобретения началась Индустриальная Революция — причём лидером была как раз страна, которая первой обуздала патенты.

«После того», конечно, не значит «вследствие того», но с тех пор наблюдается странная тенденция: по «непонятной науке причине» страны, которые озабачиваются «патентной защитой» через некоторое время оказываются в жопе, а производство убегает от них в страны, где «патентная защита» не действует (вначале из Англии и Франции — в Германию, потом в США, сегодня — в Китай). И вот кажется, что это — не случайно.
Насколько я помню, есть патент на полезную модель, и патент на изобретение. Первый по сути является патеном на идею.
Вы верно помните. Но понятие «полезной модели» есть не во всех странах. В США, если не ошибаюсь, нет. Зато тамошний аналог «промышленного образца», Design patent, позволяет патентовать что ни попадя.
Я помню у нас был курс в университете по патентам, и я помню основную мысль с этого курса, что идеи не патентуются. Конкретная реализация — патентуется, но идея — нет. А также помню нам приводили примеры, когда у компании была золотая идея, она была запатентована в виде некоторой реализации, но обогатилась на этой идее совсем другая компания, которая запатентовала смежные формы реализации.
Это по российским законам идеи не патентуются. В других странах все не так однозначно.
Больше похоже на аренду патента для готовой разработки. То что АМД сами не выпустили технологии, так это их личные проблемы.
Вроде бы их «бульдозер» как раз и грозился шарить ресурсы между большим числом ядер, за счёт чего позволять набрать больше виртуальных тредов, чем есть самих ядер.

Вроде бы, не взлетело.
Бульдозер сильно другой. SMT подразумевает, что логические ядра делят между собой только состояние потока, а вот кэши, очереди и сами ALU общие. Два потока команд долбятся в одно и тоже место, грубо говоря. У бульдозера помимо этого всего еще и кэши с ALU у модулей свои, а SIMD и FPU общие. Поэтому назвали модулями — они и не логические ядра, потому что ALU свои, и не полноценные ядра, потому что некоторые вещи общие.

Сам подход похоже взлетел — на многопоточной нагрузке хорошо показывал себя после обновлений архитектуры. Проблема была в слабой однопоточной производительности, что и погубило эту архитектуру.
Насколько мне помнится, было достаточно развёрнутое коммюнике от AMD по итогам их сотрудничества с IBM. Именно последний обладал всем необходимым потенциалом и многолетним опытом работы по выпуску многоядерных процессоров (не многопроцессорных сборок в одной коробке, а несколько физических ядер на одном кристалле), а так же большой опыт по реализации CPU поддерживающих исполнение кода с разной разрядностью. Всё это у IBM уже работало с бородатых годов на процессорах серии Power в майнфреймах и обладало реальной многоядерностью и многоразрядностью. Благодаря взаимовыгодному сотрудничеству IBM поделилась частью своих наработок и помогла AMD выпустить первый многоядерный процессор и архитектуру x86_64 в полностью аппаратной поддержке 64 бит. У Intel на тот момент времени были только многопроцессорные упаковки в одной плате CPU, но без реальной многоядерности на одном кристалле, и полупрограммная эмуляция 64 бит в виде EM64T.

Какое это отношение имеет к HT? Вот если я ничего не путаю, то AMD в тот момент как раз сосредоточилось на реальной многоядерности, оставив программную мультипоточность только как бумажное решение и не видя в нём никакой реальной технической перспективы. В то время как Intel очень крепко ухватился за эту технологию, которая не давала никакого существенно прироста производительности, но позволяла разработчикам ПО отладить многопоточность для того, что бы подготовиться к будущему физическому многоядерному процессору.
UFO just landed and posted this here
Как минимум, все x86_64 команды, в самых первых CPU Intel транслировались в набор команд i686, включая адресацию памяти и дальше исполнялись обычным 32-х битным ядром. Постепенно, в каждом следующем поколении процессоров EM64T часть команд x86_64 реализовывалась на уровне ядра CPU. Так от поколения к поколению, постепенно в течении около 5-6 лет процессора intel получили полноценное 64 ядро.

Мне посчасливилось на работе столкнуться с серверами архитектуры EM64T от самых первых моделей, до моделей вышедших в преддверии реальной 64-х битности и релиза процессоров Core. Для самых первых Xeon-ов EM64T, для установки 64 бит операционной системы, шёл большой пакет обновлений для биоса сервера и для ОС, где было по сути дела обновление микрокода CPU, что бы 64-х битная ОС могла запуститься и работать. В комплекте прилагался большой трактат про то, что изготовитель сервера снимает с себя всякую ответственность за 100% работоспособность сервера в режиме 64 бит, поскольку установлен процессор EM64T, а эта технология не является полностью 64-х битной и за всеми справками обращаться непосредственно в Intel, указав серийный номер CPU.

После выхода процессоров Core у Intel, я не встречал, что бы они (intel) упоминали для новых CPU хоть где нибудь архитектуру EM64T. У самого Intel раньше в техрегламентах я встречал, что EM64T — это переходная технология, для последующего поколения CPU с 64 архитектурой.
Как минимум, все x86_64 команды, в самых первых CPU Intel транслировались в набор команд i686, включая адресацию памяти и дальше исполнялись обычным 32-х битным ядром.

Нифига подобного.

Для самых первых Xeon-ов EM64T, для установки 64 бит операционной системы, шёл большой пакет обновлений для биоса сервера и для ОС, где было по сути дела обновление микрокода CPU, что бы 64-х битная ОС могла запуститься и работать.
И? Да, работа в 64-битном режиме не была предусмотрена, когда материнку делали. И процессоры в этом режиме меньше тестировались. Ну и так и сейчас бывает, что нужно BIOS обновлять если вы хотите использовать процессор, которого не существовало в момент выхода BIOS'а.

После выхода процессоров Core у Intel, я не встречал, что бы они (intel) упоминали для новых CPU хоть где нибудь архитектуру EM64T. У самого Intel раньше в техрегламентах я встречал, что EM64T — это переходная технология, для последующего поколения CPU с 64 архитектурой.
Ага. А Windows 3.0 — это переходная технология для последующего поколения операционок на базе OS/2 (да-да, она именно так продавалась в своё время до «развода» между IBM и Microsoft'ом, хотя между API Windows 3.x и OS/2 2.x нет почти ничего общего ни на уровне архитектуры, ни на уровне API). Меньше маркетинговых материалов читайте, я вас умоляю.

Я вас таки умоляю, но Red Book с пошаговой инструкцией установки 64 бит ОС на EM64T и пакетом патчей для ядра ОС, вкладываемый непосредственно в сервер — это всё таки не маркетинговые материалы.
Маркетинговые материалы там тоже есть :-) Они есть во всех документах, выпущенных «для внешнего пользователя». Но вообще… это всего лишь заплатки для новой, не до конца обкатанной, архитектуры. Чтобы взгромозить 64 битный андроид на какой-нибудь Nexus Player сегодня, сейчас вам тоже потребуется немаленькая пошаговая инструкция и «пакет патчей для ядра ОС». Обозначет ли это, что Z3560 — не обладает полноценной 64битной архитектурой? Нет — это обозначет всего лишь то, что 64-битный Android в настоящее время является экспериментальной разработкой, заточенной под другие платформы. А в 2004м году такой разработкой был 64-битный Windows.

P.S. Я очень хорошо помню как мы купили (вернее нам подарили) сервер Dell Power Edge лет 15 назад под Linux и специалисты из Dell'а не могли его запустить под обычной Windows (чтобы продемонстрировать, что он вообще, в принципе, работает) не вскрывая «фирменный пакет» с «патченным ядром». По вашей логике это будет обозначать, что у Intel'а уже и 32-битная архитектуры эмулируется, да?
«А в 2004м году такой разработкой был 64-битный Windows.»

Это было не в 2004, а возможно даже раньше. И да, там был Linux (и патчи шли для него) и ни о какой Windows в 64 бит и речи даже не шло. А для Windows у большинства производителей серверов был обычно свой кит, по модификации дистрибутива Windows и вшиванию в него необходимых драйверов и даже созданию готового установленного образа ОС под конкретную модель сервера без самой установки, что бы потом его просто склонировать на дисковый массив сервера, потому как «привычные методы установки» на брендовых серверах очень часто не работали. И это не зависело от разрядности.
Это не могло быть раньше, потому что первые процессоры с EM64T появились в 2004.
«включая адресацию памяти и дальше исполнялись обычным 32-х битным ядром»

Что я ну совсем не понимаю, это как такое вообще можно сделать?
Я немного косноязычно выразился, но если вкратце, то в плане адресации памяти технология PAE на 32 бит архитектуре в Intel в принципе была некоторым предшественником, хотя она имела большие ограничения на варианты использования этой памяти самой ОС.
Какое имеет отношение PAE к EM64T? Ну кроме использования некоторого количества общих блоком «в железе»? На входе в PAE те же самые обычные регистры, все операции 64-битные, только в MMU есть что-то побольше. Да, там постепенно шло развитие: PAE, PSE, PML4, но в обсуждаемых процессорах там уже было всё это.
В принципе всё верно, но дьявол, как всегда, в деталях. Не надо рассказывать сказок про «архитектуру x86_64 в полностью аппаратной поддержке 64 бит» и «полупрограммная эмуляция 64 бит в виде EM64T» а? С точки зрения арзитектуры x86_64 и EM64T не отличаются ничем вообще, просто Intel тщательно делает вид в своей документции, что компании AMD в природе не существует. А «полупрограммная эмуляция» — это уже совсем ни в какие ворота: люди «в теме» знали о том, что Intel «сдался» и добавил поддержку 64 бит в Prescott ещё в 2003м году потому что эту вашу «полупрограммную» реализацию (с расширенными регистрами, дополнительными устройствами в ALU и прочим!) люди увидели на фотограции пластины сделанной во время одной из презентаций Intel! Статья до сих пор лежит там же, где и лежала, можете взглянуть на оригинальную версию.

А Intel «ухватился за эту технологию» потому что он ударился «в кукурузные мегагерцы». Когда у вас конвеер состоит трёх десятков стадий, то частенько оказывается, что процессор что-то куда-то не так предсказал и проставивает. Чтобы хоть как-то его занять Intel и ударился в HyperThreading. И на этих самых процессорах с гиперконвейеризацией выигрыш был весьма и весьма неплох. Ну а дальше — уже использовались обкатанные разработки по принципу «с паршивой овцы — хоть шерсти клок». Всё-таки какой-то выигрыш HyperThreading даёт и сейчас.

А AMD было попросту не нужно в те времена ничего этого делать, так как гиперконвейеризацией в AMDшных процессорах и не пахло. Так что пришлось делать сразу два ядра — иначе Intel было не догнать.

Так что нет, всё произошло не из-за каких-то глубоких планов, а просто потому что Intel полез со своим NetBurst'ом не туда, куда следовало…
HP сейчас дает вполне реальную прибавку в производительности, при «хорошем» коде распараллеливающем задачи.
HP

В тред врывается Hewlett-Packard?
Добавлю свои пять копеек — да, Вы правы что EM64T есть Intel-овская реализация AMD64 расширения, и был впервые реализован в P4/Prescott вполне по-честному (т.е. и регистровый файл 64-разрядный, и 64-разрядные адреса в 48-разрядном логическом пространстве). Но и оригинальный автор тоже прав по поводу эмуляции. Частично.

Главное отличие EM64T от AMD64 в поддержке набора инструкций VMX (VT-x1.x) для виртуализации вместо AMD-шной Pacifica. И VMX был со всех сторон проблемой: мало того что автоматическая трансляция страниц (EPT) там появился только к Nehalem (2 tock-а позже), так и в первоначальных реализациях VMX делался полностью на микрокоде. [Потому и простой VMENTRY/VMEXIT в Prescott занимал около тысячи тактов]

Ну т.е. в P4/Prescott x64 (тогда называвшаяся EM64T) реализация вполне родная, 64-разрядная, но, да, там были большие куски микрокода, и нет, EM64T не идентичен AMD64.

P.S.
А выпустить реализацию AMD64 под своим именем EM64T Интелу позволяет кросс-лицензионное соглашение с AMD. Копировать instructions set могут в обе стороны (и Intel у AMD, что было в случае с AMD64 расширением, так и AMD у Intel, что было во всех остальных случаях, и последний случай с AVX)
Две ошибки в единственном предложении до ката, это уже перебор.
Спасибо за заметку, исправил. Также исправил помарку в переводе новости.
>> Многим технология Hyper-Threading запомнилась, как технология стозданая компанией INTEL

Это маркетинговое название SMT
Первыми её реализовали IBM http://people.cs.clemson.edu/~mark/acs_end.html

In summer 1968, Ed Sussenguth investigated making the ACS-360 into a multithreaded design by adding a second instruction counter and a second set of registers to the simulator. Instructions were tagged with an additional «red/blue» bit to designate the instruction stream and register set; and, as was expected, the utilization of the functional units increased since more independent instructions were available.

IBM patents and disclosures on multithreading include:

US Patent 3,728,692, J.W. Fennel, Jr., Instruction selection in a two-program counter instruction unit, filed August 1971, and issued April 1973.
US Patent 3,771,138, J.O. Celtruda, et al., Apparatus and method for serializing instructions from two independent instruction streams, filed August 1971, and issued November 1973. Note: John Earle is one of the inventors listed on the '138.
«Multiple instruction stream uniprocessor,» IBM Technical Disclosure Bulletin, January 1976, 2pp. [for S/370]
Вот он на этой странице Donald F. Hooper, Shrewsbury, MA US

REGISTER SET USED IN MULTITHREADED PARALLEL PROCESSOR ARCHITECTURE — A parallel hardware-based multithreaded processor is described. The processor includes a general purpose processor that coordinates system functions and a plurality of microengines that support multiple hardware threads or contexts. The processor maintains execution threads. The execution threads access a register set organized into a plurality of relatively addressable windows of registers that are relatively addressable per thread.
Sign up to leave a comment.

Articles