О чем говорят инженеры
Выдержки из дискуссии:
Chris Rowen, CTO at Tensilica;
Andrew Caples, senior product manager at Mentor Graphics;
Drew Wingard, CTO at Sonics;
Larry Hudepohl, vice president of hardware engineering at MIPS;
Barry Pangrle, senior power methodology engineer at Nvidia.
"There are examples of chip companies that were started to do some very clever things, but they never got off the ground because no one could figure out how to develop the software. It’s easy to build embarrassingly parallel hardware that is programmable, but building a software environment that people are willing to use is a different matter."
Как бы вдогонку к обсуждению Мультиклета.
Chris Rowen, CTO at Tensilica;
Andrew Caples, senior product manager at Mentor Graphics;
Drew Wingard, CTO at Sonics;
Larry Hudepohl, vice president of hardware engineering at MIPS;
Barry Pangrle, senior power methodology engineer at Nvidia.
"There are examples of chip companies that were started to do some very clever things, but they never got off the ground because no one could figure out how to develop the software. It’s easy to build embarrassingly parallel hardware that is programmable, but building a software environment that people are willing to use is a different matter."
Как бы вдогонку к обсуждению Мультиклета.
no subject
no subject
no subject
no subject
Хотя, время расставило всё по местам - Джобса уже нет, а Возник здравствует, несмотря на избыточный вес.
Я ведь к чему клоню - знания и умения в одних головах, а сливки снимают другие. Т.ч. сокрытие знаний это некий элемент поддержания справедливости. Это ж каким бессребреником надо быть, чтобы ютясь по съёмным квартирам и питаясь лапшой быстрого приготовления, радоваться что кто-то получает хороший профит за счёт твоего труда. Не всем же быть Перельманами.
no subject
а, наверное ты неверно понимаешь слово сакрализация?
так вот тут это "знания свалились на нас свыше, раньше их было больше, самим придумать ничего нельзя, знания только пропадают" и т.д.
это путь в деградацию. может локально ты и снимешь какие-то сливки, то на длительном интервале -- полная деградация
no subject
Не могу найти пример сакрализации в области современной науки и технологий. Это все же больше из области религии.
no subject
типа у нас есть, а остальным недоступно.
откуда у нас оно взялось -- а свыше спустилось [неявно предполагается]
no subject
no subject
Изобрести новую технологию или архитектуру мало, надо еще ее воплотить в железе. А после этого показать, что она реально работает, убедить специалистов в отрасли, что эта технология может быть для них полезной. Тогда маховик пойдет крутиться.
no subject
никаких сакральных знаний в этом нет, в конце уонцов то, что существует сейчас когда не существовало вообще.
а особенно в "убедить" --- специалисты часто подки на новинки, по крайне мере "на пощупать".
ну то, что не всякая идея на самом деле стреляет -- это другой вопрос. но тут похоже никто не может заранее угадать меру успеха или провала
no subject
а вот в "как сделать так чтобы вытрелило и принесло (кучу) прибыли" -- дофига
no subject
подчеркиваю -- знания.
побольшей части там удача. иногда у некоторых персонажей вроде как есть чуйка. но отделить и обучить они не способны.
вот к примеру фирма dec сделала охрененую линейку pdp. подняла бабла.
сделала хорошую железку vax-11, к ней операционку vax/vms. из них до сих пор идеи черпаются.
с баблом на этом получилось уже не так хорошо.
сделали альфу. с баблом вообще не вышло.
no subject
Четыре уровня - многовато на практике. Тем не менее, некоторые виртуальные машины использовали один (1-й) в дополнении к двум основным (0 и 3).
С задачами вышла промашка - медленно. Однако, если происходит переполнение стека в ядре на 0-м уровне, единственный гарантированный механизм не умереть прямо там по #DF - использовать задачу в качестве обработчика исключения #DF.
no subject
no subject
80486Pentium специально добавили бит Global в элементы таблиц страниц чтобы TLB для таких общих страниц не сбрасывались.no subject
no subject
no subject
Page table entries предусматривают только два.
no subject
Никакую реально существующую систему с виртуальной памятью и 4 кольцами перенести на x86/x64 с сохранением архитектуры нельзя.
no subject
Вот, пожалуйста: OpenVMS использует 4 кольца и требует 15 уровней защиты страницы.
В Itanium-е это есть (и больше, с добавкой доступа Execute), а в x86 -- нет.
OpenVMS работает на IA64, а на x64 -- ее не переносили, разумеется не по этой причине, но если бы встал вопрос о переносе, то отсутствие поддержки 4 колец защиты виртуальной памяти стало бы значимым техническим препятствием.
no subject
Либо количество страниц в виртуальном пространстве получится ограниченным, либо страницы большими и wasteful.
Хуже же всего, что void* окажется 128-битным типом, и адресация к каждому элементу памяти будет медленной из-за необходимости постоянных перезагрузок сегментных регистров.
И наконец, last but not least, в х86/х64 с помощью сегментных регистров можно задать защиту KW, EW, SW и UW, но не UR или URKW.
no subject
Указатель должен быть адресовать всё адресное пространство, приключения с разными категориями указателей никому не нужны.
Указатели данных могут приходить из самых разных, наперед неизвестных сегментов, поэтому перегрузка сегментного регистра потребуется практически перед каждой инструкцией или, в лучшем случае, коротким блоком инструкций. Поскольку же выяснится, что данные могут также пересекать границы сегментов-страниц, то реально проверка на переполнение указателя потребуется при каждом обращении с индексацией или инкрементом или попросту при возможности того, что поле атомарного типа пересечет границу сегментов. См. FAR-указатели в 16-битном Windows.
no subject
Как только вводится виртуальная память, возникает агностическое разбиение ядром адресного пространства на страницы фиксированного размера, реализация которых с помощью сегментов x86 ведёт ко всем перечисленным последствиям.
Кодогенератор может что-то знать об размещении данных, и то лишь в каком-то проценте случаев, лишь для модулей которые вместе прошли через оптимизатор. Ан масс он ничего о характере указателей не знает.
Сегменты нарезал пейджер.
no subject
И, конечно, собственно вообще иметь paging.
no subject
И наконец, last but not least, в х86/х64 с помощью сегментных регистров можно задать защиту (K/E/S/U)(R/W), но не напр. URKW.
no subject
Как удивительно это пересекается с тем, над чем сейчас думаю. На базе сегментов вполне можно организовать страничную память. В некотором роде "костыль", но при этом обработчик исключения по нарушению границы сегмента может эмулировать страницы любого размера. Т.е. даже на такой схеме можно получить некоторый выигрыш.
no subject
Какие системы организуют страничную память на основе сегментов? Какой в этом смысл для секцмй .text и .data, если каждую из них всегда можно описать одним сегментом? Интересная картина могла бы получиться для стека и кучи - но на x86 это дорого и громоздко.
no subject
Это не даст никаких преимуществ, а лишь убьёт производительность. Фишка как раз в том, чтобы на основе сегментов реализовать страничную память там, где она больше всего нужна - стек и куча. Размер стека и кучи - динамический. Увеличивать, наращивая границы сегмента, не получится - рано или поздно сегмент упрётся в другой сегмент. Менеджер памяти мог бы "тасовать" сегменты, создавая иллюзию непрерывного адресного пространства.
no subject
А вот что касается уровня привелегий - то они как бы и не нужны вовсе. Вполне достаточно прав rwx на виртуальную страницу для организации защищённой системы. Уровень привлегий - лишняя сущность. Защита на уровне страниц вполне покрывает все нужды. Пожалуй, единственное исключение из этого утверждения - это средства виртуализации. Тут бы хватило два уровня привелегий - гипервизор и всё остальное.
(no subject)
(no subject)
Может навредить, однако
no subject
no subject
no subject
no subject
no subject
no subject
no subject