пункт 2: linkage бывает не только статической и динамической, манглинг тесно с ней связан, так что нет смысла выделять его отдельно, да и вообще это деталь реализации. Single compilation unit - это чево? Тогда уж стадии компиляции надо было описывать. Ну static inline туда же, если уж мы заговорили об темных углах C++.
пункт 3: livelock, priority inversion, сети Петри.
пункт 4: как бы на x86 свет клином не сошелся, как минимум надо RISC и DSP.
пункт 5: NOR, NAND и транзисторы - это хорошо, а вот должен ли кандидат на теорминимум знать какие вообще типы логики бывают? Ардуина вообще там в хуй не уперлась, pardon my Klatch. Нет ни одного упоминания про параллельные и последовательные шины: ISA, PCI, PCI-e, HyperTransport, FC... чего там еще бывает...
в пункте 6 за каким-то хером упомянуты u/v pipe, но не упомянуты модели памяти, параллельные топологии (SMP, SMT, NUMA и другие), упомянуты тайминги памяти, но не написано какие вообще интерфейсы памяти бывают (просто для размышлений - должен ли отличаться интерфейс NAND flash от DDR-3 или нет?), и откуда там вообще берутся эти самые тайминги.
Некоторые слова выделены из категорий и книг, потому что они интересны в отдельности или просто хорошо звучат, кое-где указаны не все виды чего-либо, SCU это википедия, все темные углы знать не обязательно, в рамках теормина, на мой взгляд, достаточно знакомства с указанной литературой. Но я бы не отказался составить список темных углов C++, особенно если мне кто-нибудь поможет :)
Сети Петри есть ниже, я перечислил только те проблемы мультитредности, которые иллюстрируются "обедающими философами".
Есть какая-то принципиальная новизна в освоении DSP-процессоров после x86?
Arduino я привел в качестве платформы с открытой архитектурой, что делает ее весьма ценной для образования, увы, не знаю аналогов. В целом же я не особо близок к устройству аппаратного обеспечения, так что дополнения приветствуются.
Можете раскрыть пункт 6 подробнее (куда, что и в каком порядке добавить)?
общая же претензия - отсутствие системности (внутри параграфов, а не между ними), неочевидна связь между отдельными понятиями.
впечатление такое, как будто пост писал марковский алгоритм, насосавшийся популярных статей по предмету :-)
в "сетях" вообще абзац: "роутинг" - это вообще ни о чем, один только BGP гарантированно вынесет мозг кандидату, не говоря уж об остальном. в кучу смешаны глобальные, локальные и персональные сети с технологиями доступа, тогда уж и зигби вместе со всем 802.15 надо было упоминать. Алгоритмы congestion control кстати где? VPN где? ipv6 где? sctp? rtp? upnp? udp hole punching? p2p - о чем это? kerberos? ipsec?
> Некоторые слова выделены из категорий и книг, потому что они интересны в отдельности или просто хорошо звучат Замечательно выглядящая в отрыве от контекста фраза :-)
Я-то в курсе что такое SCU, непонятно что должен делать кандидат, которому предлагается этот вопрос на изучение. А список темных углов это вообще отдельная схоластика ;-) забиватор вон давеча попробовал - чуть не подрался ;-)
> Есть какая-то принципиальная новизна в освоении DSP-процессоров после x86? Попробуйте ;-) Как минимум из нового - атипичная арифметика, X/Y data pointers, MACs, hardware loops. Это если экзотику не брать вроде gennum, у которого пара десятков тупых-тупых ядер, заточенных на одну задачу, и программа больше напоминает шейдер для видеокарты.
Arduino - кроме того, что у меня к ней идиосинкразия, - она вообще не про транзисторы, она про удобный софт и IDE, транзисторы там как раз не обязательны. Вы просто схватили очередной buzzword не разобравшись.
п6. расскажите сначала, зачем вы про u/v pipe написали :-)))))
Совершенно другое дело, а то народ плачется, что слишком много и нафиг никому не нужно :) Фрагментированность и несистемность — меры вынужденные, поскольку по любой теме более-менее системная программа превратится в оглавление здоровенного талмуда. В таком случае лучше как раз и указывать название такого талмуда. Например, по тому же сетевому программированию я не знаю ничего достойного, кроме Стивенса.
Повикипедить? :) Ознакомлению с новыми аппаратными платформами очень мешает отсутствие этих аппаратных платформ :( Не вся программа составлена мной, но те, кто помогал, клялись-божились, что без Arduino и u/v pipe ну никак :)
User schegloff referenced to your post from Есть среди вас хотя бы один, кому место не на Помойке, где Бомжи (с)? (http://schegloff.livejournal.com/414440.html) saying: [...] Все, что должен знать программист, чтобы его после 40 лет не выбросили на Помойку, Где Бомжи. [...]
Когда уже разряды для программистов введут, что ли :) Но там есть некоторые вещи, которые программисту-кодеру, аналогу того токаря, совсем не нужны и даже вредны, потому что он начнет с проектировщиками за архитектуру спорить.
Список хороший, но это собственно 30 разных человек. :) Ещё у автора прослеживается особая любовь к C++ и ООП. Я ему скажу так: к 40 годам очень рекомендуется это забыть как страшный сон. Очень надеюсь, что и то и другое к его (нашему) 40 летию, благополучно помрет.
Page 2 of 5