Inside JVM. Step 2

Решил снова покопать байт код.
Пока пролистал jvm spec, javap, reJ, ClassEditor.

Дальше хочется построить простейшую jvm на java.
В учебных целях.
Вернее даже не одну jvm, а серию итераций jvm с постепенным усложнением и с поясняющими презентациями.

Подбробнее здесь
growth4u.blogspot.com/...09/inside-jvm-step-2.html

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

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

Вот здесь человек написал такую машину походя, чтобы управлять телескопами.
ru.wikipedia.org/...ограммирования

Кстати, форт-машина оказала огромное влияние на все современные виртуальные машины, включая jvm.

Я давно заметил, что у нас карго-культ. Языки программирования, компиляторы — это же так сложно, их нам присылают «белые властелины» из далеких стран. Как там они устроены внутри — мы понять не сможем, можем только зазубрить мануалы и спеки, и строго следовать их заповедям.

Где дух хакерства, где желание разобраться со сложной технической штукой?

В том смысле что слона ты слепишь, а кто тебе его продавать-то будет?

Вообще-то в посте написано, что «в учебных целях». Но я так и слышу, как эти же слова говорила бабушка Билу Гейтсу, когда он садился писать свой интерпретатор бейсика для первой персоналки. :)

между прочим, за пару-тройку дней написали такую машину для трейдинговой логики. вполне себе рабочая шняга, совсем не игрушка.

Дальше хочется построить простейшую jvm на java.
В учебных целях.
Если чисто для себя, то не будем вам мешать. :)
Однако основная цель — сделать классный практический курс по jvm internals
Курс основы (именно основы) виртуальных машин может получится. Или простой инерпритатор байт-кода.
Но «практический курс по jvm internals» — это сомнительно. Банально почитайте списки тут bit.ly/18Gb2f7
Есть желание подсказать куда лучше копать?
Собственно мейл-листы по ссылке выше (кстати, просто джавистом оно так же будет полезно).
Есть желание поучаствовать в «проекте»?
Желание желанием, а вот время. Это надо уделять куда больше чем на ДОУ-срачи, та и в перерывах между на прогонку тестов такое не поделаешь.
В любом случае если выложите проект на ГитХаб хуже не будет :)
Удачи вам.

С блэк-джеком и шлюхами?

Технически — естественно.

Вся фишка — обычному разработчику относительно быстро постичь глубины глубин JVM.
Само собой — это будут лишь основы.
Зато доходчиво и понятно.
И максимально честно.

Зато появится лопата.
А там куда дальше копать — тут уж кто куда захочет.

Только кому это надо? В том смысле что слона ты слепишь, а кто тебе его продавать-то будет?
Тем более что основная java практически вся опенсорс, но с копированием исходного кода не всё так гладко. Там юристы зубастые, не ровен час и за Hello world патент потребуют.

Попробую сказать короче — ты изобретаешь велосипед. Будь ты конструктором хоть семи пядей во лбу, но всё равно это велосипед. И если он не на основе общепринятого — никто его педалить не станет.

Лопата допустим есть, а объём гуано которое придётся перекопать — прикидываешь? Если Сан взялись писать собственную операционку, и у них даже получилось и продавалось — и всё равно банкроты. То сколько готов вложить ты?

«Глубин» там никаких нет. Обычная туева хуча работы. И как её делать — написано в любом учебнике по системному программированию. Например я — знаю как её делать, а потому не взялся бы и за деньги, даже если бы её не существовало. Неблагодарнейшая работа! Лучше всего делать то, что легко продать. Конечный продукт.

Компьютеры тоже знаешь ли изначально для бизнеса делались и для военных целей. Но рынок расставил всё на свои места, и 99% вычислительных мощностей пашут лишь с одной целью — развлечения!!! И у тебя больше шансов изобрести тамагочи, чем написать JVM.

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

Это очень сложно, над JVM работают десятки людей, в нее вгроханы миллионы.

Кроме дждк есть еще маленькая тележка поделок в которых не вбухивали миллиарды: en.wikipedia.org/...irtual_machines

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

Потому и ищу единомышленников.

А не проще ломануться на работу в MS, Google или Oracle? Один в поле не воин.

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

В мс, гугл, или оракл еще попасть надо...
Так попасть в контору не такая уж и проблема (если что-то делать, а не просто ныть на форумах).
Проблема попасть именно в ту команду, не имея профильного опыта (ВМ-ки и веб — это просто разные сферы, не сложнее/проще, а просто разные).

А кто ноет по форумам?

А кто ноет по форумам?
Это не касательно вас.
Обычно фраза про сложность попадания в МСы и Гуглы исходит от людей которые туда хотят попасть, но ничего для этого не делают.

Чет мне кажется, что не так уж и хотят, раз ничего не делают.
Но, всетаки, мой первичный посыл о том, что если хочется поковырять внутренностя жвм, то проще взять и поковырять, и не париться по поводу устройства в оракл или гугл.
Вторичный, о том что «прикольные» проекты на гитхабе, очень весомый плюс при собеседовании в крутые амер конторы (ходят слухи, что кое где даже требование).

Подписаться на комментарии