PDA

View Full Version : Was ist MI?



padawan
25-01-11, 13:36
Hallo,
was bedeutet der Begriff MI und was kann man damit machen?

Gruss
padawan

DBlazkow
25-01-11, 13:48
IBM iSeries Maschine Interface (MI): http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=%2Fapiref%2FMIpgmg.htm

Mfg
DBlazkow

Fuerchau
25-01-11, 13:49
MI = MachineInterface
Dies entsprecht quasi dem Assembler anderer Maschinen.
Wie MI aussieht, kannst du bei einer RPG-Umwandlung mit der Option *LIST betrachten.

Mit MI kann man nicht mehr machen als mit HLL-Sprachen wie COBOL/RPG/ILERPG, eher sogar weniger, da sämtliche IO-Zugriffe nicht Bestandteil von MI sondern undokumentierte API's (also CALL's) sind.
Mittels MI-Compiler (bzw. CRTPGM-API) lassen sich OPM-Programme erstellen und beliebig aufrufen.

Wesentlich komfortabler ist inzwischen ILERPG mit der Einbindung von C-Funktionen, da ggf. einige MI-Befehle mittels C-Befehl erreichbar sind.

Wers braucht kann damit USRSPC oder USRIDX bearbeiten.
Interessant ist ggf. die Anlage eines USRSPC mit länger als 10 Zeichen (MI-Arbeitet bei Objekten nämlich mit 30-stelligen Objektnamen).
Diese können nämlich nur per MI auch wieder gelöscht werden.

Pikachu
25-01-11, 13:57
OS/400 Virtualisierung (http://de.wikipedia.org/wiki/OS/400#Virtualisierung)

Christian Bartels
26-01-11, 10:09
Interessant können auch MI-Instruktionen wie matmatr ("materialize machine attributes") oder matrmd ("materialize resource management data") sein, mit denen man tief ins System schauen kann. Die kann man aber alle aus C/C++ aufrufen, Header stehen in QSYSINC/MIH. Dokumentation gibts hier: http://publib.boulder.ibm.com/infocenter/iseries/v6r1m0/topic/rzajp/sc092418.pdf

holgerscherer
26-01-11, 15:12
Mit MI kann man nicht mehr machen als mit HLL-Sprachen wie COBOL/RPG/ILERPG,

Baldur, da wäre ich vorsichtig. Mit MI kann ich Schweinereien auf der AS400 zaubern, dass man vom Glauben abfällt. Zum Beispiel mal eben die Seriennummer / Modell temporär umlöten - wenn Du das in RPG hinkriegst, geb ich Dir ein Bier aus ;-)

-h