LINUX.ORG.RU

The Multi-Tasking Virtual Machine


0

0

На сайте SUN появилась интересная статья о новой разработке в Java 1.5, а именно "многозадачная" виртуальная машина. Суть в том, чтобы изолировать множественные приложения в рамках одной JVM вместо запуска нескольких вирт. машин. Это дает более быстрый старт и общую производительность.
Настоятельно рекомендую прочитать следующие разделы:
* The Resource Management (RM) Interface - управление ресурсами. Ограничение на используемое кол-во CPU, сетевую и прочую активность для каждой виртуалки.

* On the Horizon - прозрачная кластеризация приложений без внесения изменений в код.

Если все это будет как у SUN обычно на высоте, то .NET отдыхает как и раньше :) (флейма ради)

>>> Статья

★★★

Проверено: Pi ()

И ста лет не прошло, как до такой тривиальщины додумались... Сантехники - те ещё тормоза... В чём они обычно на высоте, так это в изобретении велосипедов.

vsl
()

Видители сударь, у .net есть GAC и AOT, поэтому все приложения разделяют код как минимум стандартных либ. Ну а относительно того стоит ли в одну операционку запихивать другую ( а вышеупомянутая jvm чем то уже напоминает OS! ) ... ну скажем так - есть значительно более удачные идеи и реализации даже у того же суня.

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

anonymous
()

Вроде бы, еще Apple в своих JDK стала делать runtime-библиотеку разделяемой между всеми процессами. Это прежде всего касалось таких стандартных классов как String. Такой шаг был рискованным, но судя по откликам, десктопные java-приложения стали работать быстрее на MacOS X.

Что касается флейма, то "там" похожая штука называется "доменами приложений" (application domains)... :)

dave ★★★★★
()

По моему это похоже на то, как Apple обтачивает JVM для своих MacOSX. Я помню что там даже всякие классы загруженные работали аля .so - то есть если 2 аппликухи юзають один Jar, то код один раз в память помещается. Кажется так.

Mossy
()

и ста лет не прошло...

anonymous
()

Короче JAVA - это ОС внутри ОС, так?

Может, проще портировать линукс на все платформы, чем заморачиваться с явой?

theserg ★★★
()
Ответ на: комментарий от theserg

Дааа... ява - это и так один боооооольшой тоооормоз, а теперь создают еще один крутой тормоз внутри уже имеющегося тормоза. наверное дальше будет больше - налабают спец яву для работы внутри этой вирт машины. и будет сказка... так держать сантехники! "верным путем идете тавагищи" (с) Ленин... тока вот в сторону кладбища почему-то поход получается.

Deleted
()
Ответ на: комментарий от anonymous

Ну точно, как я и думал:

"The Java platform can grow to become a complete operating environment, subsuming the role of modern operating systems as well as middleware platforms."

Grzegorz Czajkowski, Principal Investigator for the Barcelona Project Sun Microsystems Laboratories

На питоне к стати тоже операционки лабають.

Интересно вот что:

Daynes adds: "Moreover, the Java Platform might not be limited to programs written in the Java language: one can have programs written in various programming languages that target JVM bytecodes, and such applications can co-exist in the same JVM due to MVM's scalable isolation techniques."

А я думал это не для кого не секрет. Однако "JVM bytecodes" к сожалению мало для чего подходят окромя жабы. Например реализация языков, где объекты могут быть как value-type так и reference-type делается через ЖОПУ. Догадываетесь почему?

anonymous
()

ИМХО это очередной костыль к прочим костылям и подпоркам в java.

alphex_kaanoken ★★★
()
Ответ на: комментарий от theserg

> Короче JAVA - это ОС внутри ОС, так?

Не так. JVM --- это эмулятор некой машины, работающий на абсолютно другой архитектуре. И вполне естественно, что на той эмулироемой машине может (и должна) быть многозадачная OS.

lumag ★★
()

И если упадет одна вирт машина то упадет все разом.
Правильно чего по одиночке падать?

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

Aleks_IZA
()
Ответ на: комментарий от lumag

Господа, не парьтесь! Ну перданул господин Czajkowski в лужу, ну с кем небывает! MVM - это нигде ( то есть не в каком месте ) не OS. Подумайте сами. До OS MVM-у как до Китая раком. Это понятно. То, что они делают - ( расшаривание кода ) к сожалению с большим запаздыванием - вещь просто необходимая. Только вот есть интересные вопросы - например GC у них похоже будет один на все апликухи, запущенные под vm ? Как известно чем больше объектов тем больше ( и дольше ) трейсить надо и тем больше ( дольше ) компактить... Вобщем Х.З. во что это выльется. Суна как известно гигантский overhead по памяти никогда не беспокоил - помяните мое слово в MVM он только увеличится.

anonymous
()
Ответ на: комментарий от anonymous

>PS teper na tomcate mogno budet hosting sdelat normalnii !!!

PS normalnye liudi davno vse pereshli na rezin.

Конэчно - если купить майнфрейм от IBM. Только прикиньте, если какой нибудь козел отьест памяти от пуза, вся MVM с туевой кучей прикладух грохнется с OutOfMemoryError.

anonymous
()
Ответ на: комментарий от Aleks_IZA

> И если упадет одна вирт машина то упадет все разом. > Правильно чего по одиночке падать?

Перефразируем немного: "если упадет одно ядро системы Линукс, то упадет все разом." Ведь так получается... :)

Кстати, разработчики во главе с Чайковским (Czajkowski) понимают такую опасность, и на эту тему в статье есть пара строчек.

dave ★★★★★
()

Вспоминается 1996 год, и перд сана о том, что де они вот вот выпустаят "чегото там downgrade kit".
Работать это чудо должно было под ДОС и заменять в то время вин95 и вин3.1/3.11. Там должен был быть
редактор текста, рисовалка, чето еще, короче для офиса. Написано все это должно было быть в Жабе.
Есло учесть, что для первой половины 96го стандартом было P100 + 16МБ RAM, а ведь были еще и
486 DX/2, DX, SX, 386DX/SX ... Сейчас этот проект смахивает на глупую шутку. Тогда думаю многие,
по крайней мере я, восприняли это несколько более серьезно, уважение к такой фирме все таки давало о
себе знать. Время летело, компания не менялась. Все дешевело и становилось все быстрее/надежнее, а они за те же
деньги пытались продавать свою рухлядь, слили х86 рынок рабочих станций, принялись за серверный сегмент.
Правда жабу втиснули везде, это факт, но вот на долго ли?

>Если все это будет как у СЫН обычно на высоте ...
А что у них последние 5 лет на высоте? Разве что солярис ....

XCHG
()
Ответ на: комментарий от vsl

Говорят Emacs был бы хорошей OS если бы в нем был текстовый редактор ;-)

Что касается JAVA. Для server side - это не актуально. А Apple действительно передал эту технологию SUN.

Yilativs ★★★★
()
Ответ на: комментарий от theserg

> Короче JAVA - это ОС внутри ОС, так?

Причем лишняя здесь скорее не JVM, а ОС под которой она работает ;) Есть интересный проект по реализации JVM в виде самостоятельной ОС - jnode (http://jnode.org/).

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

По поводу .NET:
MS-DOS была убогой пародией на UNIX, теперь .NET - на Java. Microsoft всегда занималась только тем, что извращала хорошие технологии, делая из них зато коммерчески более успешные.

Fice ★★
()
Ответ на: комментарий от Yilativs

Народ, я не хочу показаться ..., короче начал писать на Жабе, и вполне доволен... Мне очень нравится. Хорошо и стпройно все организовано. С++ конечно помощнее, но .... я думаю что альтернатива жабе - QT когда выйдет четверка, обязательно попробую ее, но пока ... Кто программирует на С#, есть смысл ее осваивать? меня пугает то что это только под вин.... а у меня дома линух.

Я бы очень хотел услышать слово того, кто применяет жабу в больших серьезных проектах! вас она устраивает или нет?!

anonymous
()
Ответ на: комментарий от anonymous

> я думаю что альтернатива жабе - QT

Я так понимаю, речь идет о разработке GUI (графический пользовательский интерфейс). По моему, Java для этого довольно хорошо приспособлена. Только QT - альтернатива не Java а Java/Swing. Swing'у есть и другие альтернативы: SWT, java-gnome. Вполне возможно, что кто-нибудь уже сделал java-привязки и для QT.

Fice ★★
()
Ответ на: комментарий от anonymous

Ну, я применяю. Не устраивает. Отвратительный язычок, отвратительная VM, отвратительные библиотеки. Изучи Common Lisp лучше.

vsl
()
Ответ на: комментарий от Shaman007

Об что я и говорю. Любят они что либо тривиальное красиво обозвать и с помпой заявить, что открыли Америку. Идиоты...

vsl
()
Ответ на: комментарий от vsl

Вроде в питерском отделении этим занимались...

anonymous
()
Ответ на: комментарий от torvic

А тут никто не знает что такое application domains. И что действительно сантехники именно это имплементировали 1:1

Всетаки все больше и больше убеждаюсь что .NET намного прогрессивней.

anonymous
()
Ответ на: комментарий от anonymous

на сервере для веба/сервера_приложений - вполне.

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

aist1 ★★★
()
Ответ на: комментарий от anonymous

Караван лает, собака идет :)

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

Как написал в своем резюме Иван Абрамович Левый: "JAVA - это язык, на котором я реально могу написать демо-версию любого мега-заказа и уверенно расширять ее в течении полугода."

:)

anonymous
()
Ответ на: комментарий от anonymous

> Кто программирует на С#, есть смысл ее осваивать?

Если ты вообще собираешься писать гуевый софт под винду - имеет.

int19h ★★★★
()
Ответ на: комментарий от anonymous

> меня пугает то что это только под вин.... а у меня дома линух.

Да, поставь себе Mono и посмотри на Gtk# =)

int19h ★★★★
()
Ответ на: комментарий от Fice

> Причем лишняя здесь скорее не JVM, а ОС под которой она работает ;)
> Есть интересный проект по реализации JVM в виде самостоятельной ОС -
> jnode (http://jnode.org/ [http://jnode.org/]).

Упаси Илуватар нас от такого. С учетом общей кривости жабской VM, если
она будет самым низким уровнем, до которого можно докопаться в системе,
то впору будет стреляться.

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

Это ты так наивно полагаешь, что до жабки такого понятия, как VM, не
было? Ну-ну...

> По поводу .NET:
> MS-DOS была убогой пародией на UNIX, теперь .NET - на Java. Microsoft
> всегда занималась только тем, что извращала хорошие технологии, делая
> из них зато коммерчески более успешные.

CLR как VM _лучше_ Java VM. C# как язык _лучше_ Java. Это научный факт
=) Да и ряд библиотек там тоже лучше...

А MS-DOS никогда не была пародией на UNIX, с чего ты это вообще взял?
Это была пародия на CP/M.

Короче, незачот.

int19h ★★★★
()
Ответ на: комментарий от dave

2dave
>Перефразируем немного: "если упадет одно ядро системы Линукс, то упадет все разом." Ведь так получается... :)

Вопрос в том кто от чего падает. Про явовский OutOfMemory - уже написали. Это хорошо пока задачи ничего не делают - но когда кончается память ява машина просто падает - вот такие дела... Это один из минусов который меня сильно убивает....
И толкового решения этой проблемы я пока не нашел.

Aleks_IZA
()
Ответ на: комментарий от Aleks_IZA

> И толкового решения этой проблемы я пока не нашел.
GRID решение этой проблемы. если память сжирается, подключаются еще несколько узлов. и с тебя дополнительные пять копеек сану.

anonymous
()
Ответ на: комментарий от Fice

>>MS-DOS была убогой пародией на UNIX, теперь .NET - на Java.
>>Microsoft всегда занималась только тем, что извращала хорошие
>>технологии, делая из них зато коммерчески более успешные.

Нет, ну чем же так .Net плох? Я вот сколько про него не читаю, недостатков особо не нахожу. А что не использую пока, так только потому, что работает он надежно пока только под Windows.


Eugeny_Balakhonov ★★
()
Ответ на: комментарий от Eugeny_Balakhonov

> Нет, ну чем же так .Net плох? Я вот сколько про него не читаю,
> недостатков особо не нахожу.

Библиотека классов у него хреновая. Ты местные коллекшены видел? а
логику в них? А как насчет практически полного отсутствия layout
management в WinForms? В-общем, много чего там криво...

int19h ★★★★
()

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

anonymous
()
Ответ на: комментарий от int19h

> Библиотека классов у него хреновая. Ты местные коллекшены видел? а логику в них? А как насчет практически полного отсутствия layout management в WinForms? В-общем, много чего там криво...

Слава Илюватору, к коллекшенам вполне можно привыкнуть. Там есть своя логика... Layout будет для Avalon/XAML или даже для WinForms в .NET v2.0. Что касается кривости, то ее везде можно найти.

dave ★★★★★
()
Ответ на: комментарий от Aleks_IZA

> Вопрос в том кто от чего падает. Про явовский OutOfMemory - уже написали. [...]

Будем надеяться, что эту проблему зарешают. Тем более, теперь она становится более актуальной.

dave ★★★★★
()
Ответ на: комментарий от Pi

Не, написать так, чтобы не тормозила сложная произвольная графика принципиально невозможно. Быстро рисуются только солид-линии нулевой или одинарной толщины. Если задать произвольный keystroke, скорость отрисовки линий падает в сотни раз. Доходило до того, что мне приходилось в Grid-like компоненте эмулировать обводку ячейки жирной линией через _две_ тонких линии. Причем, это проблема не Java -- одинарные сплошные линии рисуются достаточно шустро. Это проблема Java2D. Там, судя по комментариям разработчиков в Bug Database многие функции рисования до сих пор не акселерированы.

aist1 ★★★
()
Ответ на: комментарий от theserg

>Короче JAVA - это ОС внутри ОС, так?

Operational environment если быть точным.

>Может, проще портировать линукс на все платформы, чем заморачиваться с явой?

юних - дерьмо. Java - ублюдочшная и убогая, но всё таки реинкарнация Simbolics'а. А занчит априори лучше.

dsa
()
Ответ на: комментарий от int19h

>А MS-DOS никогда не была пародией на UNIX, с чего ты это вообще взял? Это была пародия на CP/M.

Спорный вопрос вообще-то. Первая версия, написанная Патерсеном - да, на CP/М. Во второй появилось до фига от UNIX. Если учесть, что вторая версия разрабатывалась уже в M$, который о ту пору торговал XENIX'ом, то есть о чем задуматься, nicht wahr? Вообще, это общеизвестно, читай у Таннеебаума или даже хоть тут: http://en.wikipedia.org/wiki/MS-DOS

svr69 ★★
()
Ответ на: комментарий от int19h

> А как насчет практически полного отсутствия layout management в WinForms?

я уверен ини скоро появятся, а МС эту идею ещё нахально и запатентует

Pi ★★★★★
()
Ответ на: комментарий от dave

> Слава Илюватору, к коллекшенам вполне можно привыкнуть. Там есть своя
> логика...

Есть. Извращенная. А вот например аналога Set - нет. И нет TreeSet/
TreeMap (которые иногда бывают нужны). А еще они очень любят в качестве
параметра брать не, скажем, IList или ICollection, а просто и
незатейливо - object[]. Типа, кому надо, преобразует... ручками.

Хотя, опять же, все это клятвенно обещались поправить в 2.0. Посмотрим.
С учетом того, что там будут нормальные generics - оно таки обещает
рулить =)

> Layout будет для Avalon/XAML или даже для WinForms в .NET
> v2.0.

Вот когда будет .NET 2.0 - будем об этом говорить

int19h ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.