Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> 5 основных отличий между Java и C++ 
:(
    Опции темы
JUncle
Дата 13.5.2006, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 162
Регистрация: 6.4.2006
Где: Казань, РФ

Репутация: нет
Всего: 1



Цитата(maxim1000 @  13.5.2006,  00:58 Найти цитируемый пост)
сразу скажу, человек я - о Java знающий издалека
но интересно: если у нас есть интерпретатор неважно какого кода (если я не ошибаюсь, это является одним из способов построения JVM), то разве нельзя там обойти все эти отличия?
грубые прикидки:
многозадачность - после каждых N исполненных команд байт кода делать переключение потоков (т.е. просто сохранять контекст одного и переводить программный счётчик на другой кусок кода)
ограничения по памяти - так мы же (в данном случае с точки зрения создателей интерпретатора) и обрабатываем эти запросы, кто мешает сделать свой алгоритм подгрузки/выгрузки страниц на винт?

да, несомненно, такая реализация будет медленной, но всё же не невозможной...

Не забывайте что все это не влезет в 1 МБ (теоритический максимум - на деле все гораздо хуже) 
--------------------
class JUncle extends Man // singleton{/*...*/}
PM MAIL   Вверх
LSD
Дата 13.5.2006, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

Репутация: 210
Всего: 538



Цитата(MoonCat @  13.5.2006,  00:18 Найти цитируемый пост)
Ох, давно это было...
1) Ограниченность адресуемой оперативной памяти.
Вроде свего  1 мегабайт. Хотя...  для Java ME хватит.   
2) Отсутствие многозадачности. Тут даже мобильная Java не потянет...
ну, там еще есть разного рода проблемы...

1. Игрушки спокойно это обходили, если помнишь DOOM требовал себе не менее 4Мб памяти, и делал он это не из жадости, а реально эту память использовал. Во-первых есть такая программа DOS4GW которая предназначена для перевода машины в защищенный режим, с возможностью адресовать все 4 Гб памяти. Во-вторых можно самому перевести процессор в защищенный режим, и я даже писал на ассемблере программу которая это делает.
2. Никто не мешает JVM взять на себя задачи ядра по разделению процессорного времени. И кстати в спецификации JVM записано, что JVM вольна использовать потоки ОС для реализации многозадачности, или взять на себя разделение времени между потоками. Как вариант взять за основу готовое микроядро, тот же MACH, и на базе его реализовать это дело.

Принципиальных ограничений нет, просто многие вещи которые в современных ОС уже реализованы, тут придется брать на себя. Задача весьма трудоемкая, но выполнимая.  


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
powerOn
Дата 13.5.2006, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 47
Всего: 159



Цитата

1. Игрушки спокойно это обходили, если помнишь DOOM требовал себе не менее 4Мб памяти, и делал он это не из жадости, а реально эту память использовал. Во-первых есть такая программа DOS4GW которая предназначена для перевода машины в защищенный режим, с возможностью адресовать все 4 Гб памяти. Во-вторых можно самому перевести процессор в защищенный режим, и я даже писал на ассемблере программу которая это делает.
2. Никто не мешает JVM взять на себя задачи ядра по разделению процессорного времени. И кстати в спецификации JVM записано, что JVM вольна использовать потоки ОС для реализации многозадачности, или взять на себя разделение времени между потоками. Как вариант взять за основу готовое микроядро, тот же MACH, и на базе его реализовать это дело.


Ну здрасти! Перейти в защищенный режим, реализовать управление процессами, еще можно файловую систему за одно доработать, поддержку длинных имен файлов включить, Еще пару батиков, и все это хозяйство можно обозвать, ну, например "Джавиндоус"...  smile 

Согласен, LSD,  конечно же с технической точки зрения это реализуемо, но какой ценой... 


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
ALKS
Дата 13.5.2006, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 354
Регистрация: 22.3.2006

Репутация: 1
Всего: 11



Ребят, а вы думаете мало других экзотических OS под которые JVM трудно писать? 

с MSDOS все просто, нету под нее JVM, не потому что ее сложно сделать (да ничего там сложного принципиально нету, да и с памятью нету проблеммы в защещенном режиме достигаеться вполне 32bit адресация http://ru.wikipedia.org/wiki/386DOS, да и кто вам сказал что надо все разрабатыватьс  нуля? качественно написанные библиотеки для защещенного режима, длинных имен файлов, мнопоточности и т.п. 1000% существуют - купил и вперед.), а потому что она там никому не нужна. не пишут сейчас под DOS софт. тем более серверный софт, в чём Java особенно сильна smile 
смысла вкладывать деньги в разработку этой JVM - нету, но технически - нуль проблеммо. smile  

Это сообщение отредактировал(а) ALKS - 13.5.2006, 13:06
PM   Вверх
Амортизатор
Дата 24.5.2006, 22:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 17.4.2005
Где: в Караганде

Репутация: нет
Всего: 8



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


--------------------
Поехали!
PM MAIL   Вверх
Void
Дата 24.5.2006, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 1
Всего: 173



Амортизатор, такая возможность обсуждается в Комитете (вот proposal). Но включат это в окончательную версию стандарта или нет — большой вопрос.
Речь идет именно о консервативном GC. Умные указатели давно утверждены в новом составе стандартной библиотеки.

Добавлено @ 22:45 
Цитата(Амортизатор @  25.5.2006,  00:29 Найти цитируемый пост)
Мне вообще непонятно, как это можно организовать, не меняя среду исполнения.

Работает же Boehm GC. 


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
DuDDits
Дата 14.4.2007, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 7.2.2007

Репутация: нет
Всего: нет



Цитата(ALKS @ 13.5.2006,  11:04)
Ребят, а вы думаете мало других экзотических OS под которые JVM трудно писать? 

с MSDOS все просто, нету под нее JVM, не потому что ее сложно сделать (да ничего там сложного принципиально нету, да и с памятью нету проблеммы в защещенном режиме достигаеться вполне 32bit адресация http://ru.wikipedia.org/wiki/386DOS, да и кто вам сказал что надо все разрабатыватьс  нуля? качественно написанные библиотеки для защещенного режима, длинных имен файлов, мнопоточности и т.п. 1000% существуют - купил и вперед.), а потому что она там никому не нужна. не пишут сейчас под DOS софт. тем более серверный софт, в чём Java особенно сильна smile 
смысла вкладывать деньги в разработку этой JVM - нету, но технически - нуль проблеммо. smile

Пишут и еще как пишут сейчас под MS-DOS. Многие промышленные компьютеры предназначеные для работы на   станках с ЧПУ используют именно эту OS причем как в Росси так и за рубежом , а также многие программные комплексы для работы с оборудованием (например для АЗС - авто запр. станция), использующие специализированные промышленные компьютеры, также написаны для OS MS-DOS.  
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0750 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.