Ищу IBM'овскую Java Virtual Machine

Тема в разделе "WASM.ZEN", создана пользователем Stiver, 8 апр 2006.

  1. Stiver

    Stiver Партизан дзена

    Публикаций:
    0
    Регистрация:
    18 дек 2004
    Сообщения:
    812
    Адрес:
    Germany
    Решил на днях посмотреть на JVM от IBM, в частности поискать аналог sun.misc.Unsafe. На странице IBM нашел где можно скачать ее

    IBM 32-bit Runtime Environment for Java 2 (JRE)

    но наткнулся на следующие требования



    - Computer must be an IBM system. This program will not install on non-IBM systems.

    - Computer must have been manufactured prior to 1 Apr 2005.



    Откуда я им спрашивается "IBM system" возьму!? Или я что-то не то пытаюсь установить? Если у кого-то есть IBM'овская JVM, поделитесь пожалуйста, буду благодарен. Также благодарен буду за ссылки на другие виртуальные машины для Явы кроме Sun.
     
  2. RElf

    RElf New Member

    Публикаций:
    0
    Регистрация:
    25 дек 2004
    Сообщения:
    159
    Я скачивал себе IBM'овскую жабу под линукс, работает нормально.

    "IBM System" скорее всего означается просто "PC-compatible". А если это какая-то проверка на производителя, то забитхачишь инсталлятор.

    Так что качай и не заморачивайся.
     
  3. Stiver

    Stiver Партизан дзена

    Публикаций:
    0
    Регистрация:
    18 дек 2004
    Сообщения:
    812
    Адрес:
    Germany
    Там действительно проверка на производителя оказалась, через WMI "SELECT Manufacturer from Win32_ComputerSystem". Но патчить ничего не понадобилось, так как проверка эта производится отдельной программкой(checkIBM.exe) и результат пишется в файл TEST.OUT, откуда его в свою очередь читает скрипт:

    @00008D34:0021 function_503(2);
    @00008D3F:0021 function_810();
    @00008D45:0006 local_string13 = LASTRESULT;
    @00008D4F:0021 function_504(local_number8, local_string13, "TEST.OUT");
    @00008D66:0021 WriteLine/GetLine(local_number8, local_string12);
    @00008D72:0021 CloseFile(local_number8);
    @00008D7B:000D local_number9 = (local_string12 = "IBM");
    @00008D8B:0004 if(local_number9) then // ref index: 1

    Поэтому можно просто подсунуть ему собственный TEST.OUT со строчкой 'IBM\r\n' внутри и все благополучно установится. Отдельное спасибо всем авторам и просто приложившим руку к статье "Исследование InstallShield 6+ – обзор методик".