Partition Number


Главная Форумы IBM i (OS/400) Partition Number

В этой теме 6 ответов, 3 участника, последнее обновление  Sever 8 года/лет, 4 мес. назад.

  • Автор
    Сообщения
  • #4711

    Oldnick
    Участник

    как средствами OS/400 определить этот Partition Number?
    или, по-любому надо писать прогу, которая использует API, чтобы определить этот номер?
    на сколько я понимаю, номер может быть 0, 1, 2 и далее…
    Если машина без LPARs и без HMC, то номер по-видимому должен быть равен 0. Во всех других случаях этот номер не очевиден, его надо определять.

    [/URL]

  • #4713

    Sever
    Участник

    oldnick1971 писал(а):

    как средствами OS/400 определить этот Partition Number?
    или, по-любому надо писать прогу, которая использует API, чтобы определить этот номер?

    надо писать.

    на сколько я понимаю, номер может быть 0, 1, 2 и далее…
    Если машина без LPARs и без HMC, то номер по-видимому должен быть равен 0.

    На машинах с сервисным процесором нулевая партиция это он (сервисник) и есть.
    Первая партиция имеет id = «1». Номер это фиксированое значение. Он у партиции не меняется при изменении числа и состава партиций. К примеру можно иметь только одну партицию с номером отличным от «1»

  • #4714

    Oldnick
    Участник

    ничего не понял,

    То есть, на «моей» машине нельзя иметь патицию i5/OS с номером 0 ?

    И на машине, например, Power5 с твинаксиальной консолью номер eдинственной патиции не может быть равен 0, а должен быть равен 1 ?

  • #4715

    Sever
    Участник

    Нулевого номера партиции на пятой и шестой линейке машин ты никогда не увидишь.
    Нумерация начинается с единицы, но можно при наличии двух партиций удалить одну с номером «1». В итоге останется одна партиция с номером «2».

    возьми SHWCPU — там в заголовке высвечивается число партиций и номер текущей.

  • #4724

    Sever
    Участник

    В тему…
    «Нулевые» партиции присутствуют на серверах восьмисотой серии и более старых системах. Primary партиция на таких серверах всегда идет под номером «0».
    В «новых серверах» функции primary партиции переданы сервисному процессору (гипервизору).

  • #4746

    Андрей
    Участник

    Прога оч. простая.
    Там есть еще много интересного.

    #include
    #include

    _MMTR_Template_T machine_attributes;

    _MMTR_01E0_T lpar_attributes;

    int main(void) {
    machine_attributes.Options.Template_Size = sizeof(_MMTR_Template_T);
    matmatr( &machine_attributes, _MMTR_LPAR_INFO );
    printf(«Lpar ID: %8.8d n»,
    machine_attributes.Options.Data.LparInfo.partition_id );
    }

  • #4754

    Sever
    Участник

    Аналог на CL:

    PGM
    DCL VAR(&RCV) TYPE(*CHAR) LEN(512) VALUE(X’00000200′ )
    DCL VAR(&C2) TYPE(*CHAR) LEN(2)
    DCL VAR(&LPARCUR) TYPE(*CHAR) LEN(1)
    DCL VAR(&NLPARCUR) TYPE(*DEC) LEN(2)
    DCL VAR(&NULL) TYPE(*CHAR) LEN(1) VALUE(X’00’ )
    MONMSG MSGID(CPF0000 MCH0000)
    CALLPRC PRC(‘_MATMATR1′ ) PARM(&RCV X’01E0’ )
    CHGVAR VAR(&LPARCUR) VALUE(%SST(&RCV 10 1 ))
    CHGVAR VAR(&C2) VALUE(&NULL *CAT &LPARCUR)
    CHGVAR VAR(&NLPARCUR ) VALUE(%BIN(&C2 1 2 ))
    CHGVAR VAR(&C2) VALUE(&NLPARCUR)
    SNDPGMMSG MSG(‘Current LparID = ‘ *CAT &C2)
    ENDPGM

Для ответа в этой теме необходимо авторизоваться.