Overblog
Suivre ce blog Administration + Créer mon blog
16 novembre 2023 4 16 /11 /novembre /2023 22:59
Partager cet article
Repost0
16 mars 2023 4 16 /03 /mars /2023 11:10
AS/400 - petits prix

AS/400 - petits prix

Partager cet article
Repost0
5 avril 2022 2 05 /04 /avril /2022 08:29
Partager cet article
Repost0
5 mai 2020 2 05 /05 /mai /2020 13:45

As any child knows,

it is easier to ask for forgiveness than to get permission.

Inside the AS/400, Frank G. Soltis

Partager cet article
Repost0
4 mai 2020 1 04 /05 /mai /2020 09:10

With the use of objects; application and system software no longer know about the precise format of the data structure.

That knowledge is contained within the object itself and is not visible outside the object.

Because it is not visible, any change to the data structure have no impact on application or system software.

The software is independent of the underlying structure.

This characteristic of hiding the internal details is called encapsulation.

Inside the AS/400, Frank G. Soltis

Partager cet article
Repost0
1 mai 2020 5 01 /05 /mai /2020 17:16
Bibliothèque Library Context

Bibliothèque Library Context

Even when there is a one-to-one mapping of an OS/400 object to an MI system object, the objects may have different names.

For example, OS/400 has an object called a library.

There is an equivalent system object at the MI, but there it is called a context.

How could this happen ?

The answer goes back to the System/38 days and the two different groups of people with two different naming philosophies.

Inside the AS/400, Frank G. Soltis

Partager cet article
Repost0
29 avril 2020 3 29 /04 /avril /2020 11:49
AS/400 Tasking Structure

AS/400 Tasking Structure

In any computer system, only a small number of basic ideas give the system a competitive edge.

The technology independence of the AS/400  the MI provides is such an idea, as the performance advantage the single level store provides.

Some of these ideas are known to everyone ; others are not.

One of the most important idea in the AS/400 is the tasking structure, yet it is not widely known.

Inside the AS/400, Frank G. Soltis

Partager cet article
Repost0
12 juin 2018 2 12 /06 /juin /2018 16:02

Dans l'ouvrage d'Andrew Tanenbaum, "Systèmes d'exploitation", au chapitre "12.6.6 Les systèmes d'exploitation à vaste espace d'adressage", je lis les extraits suivants :

"Dans la mesure où les ordinateurs évoluent des espaces d'adressage de 32 bits vers les espaces d'adressage de 64 bits, des changements majeurs dans la conception des systèmes d'exploitation deviennent envisageables."
...
"Tous les fichiers pourraient être stockés en permanence dans une mémoire (virtuelle)."
...
"On pourrait créer des objets dans l'espace d'adressage et les y conserver jusqu'à ce que toutes les références à ces objets aient disparu, moment à partir duquel ils seraient supprimés. De tels objets seraient permanents dans leur espace d'adressage, même après arrêt et réamorçage de l'ordinateur."
...
"Avec un grand nombre d'objets dans l'espace d'adressage, il devient intéressant d'autoriser plusieurs processus à s'exécuter simultanément dans le même espace d'adressage pour partager des objets. Une telle conception mènerait inévitablement à des systèmes d'exploitation très différents de ceux que nous connaissons actuellement."
...

Et bien... IMO, le futur ressemble furieusement à l'antique System/38, au bon vieil AS/400, à l'iSeries, au très actuel IBM i.
Ces systèmes ont une architecture basée sur des pointeurs 128 bits : le futur est là depuis 40 ans !!! 

12.6.6 Les systèmes d'exploitation à vaste espace d'adressage"

12.6.6 Les systèmes d'exploitation à vaste espace d'adressage"

Andrew Tanenbaum, "Systèmes d'exploitation"

Andrew Tanenbaum, "Systèmes d'exploitation"

Partager cet article
Repost0
15 novembre 2017 3 15 /11 /novembre /2017 10:05
Partager cet article
Repost0
1 mai 2016 7 01 /05 /mai /2016 17:05

/* Sauvegarde la liste de bibliothèques */
/* Appelle le programme boot de l'appli, qui gère ses bib */
/* Restaure la liste de bibliothèques précédente */


PGM
DCL VAR(&BIBLIST) TYPE(*CHAR) LEN(2750)
DCL VAR(&BIBCUR) TYPE(*CHAR) LEN(10)
DCL VAR(&BIB) TYPE(*CHAR) LEN(10)
DCL VAR(&BBASE) TYPE(*CHAR) LEN(10)
DCL VAR(&F) TYPE(*INT)
DCL VAR(&MSG) TYPE(*CHAR) LEN(132)

MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(ANOM))

RTVOBJD OBJ(BOOTAPLLI) OBJTYPE(*PGM) RTNLIB(&BBASE)
RTVJOBA USRLIBL(&BIBLIST) CURLIB(&BIBCUR)
IF COND(&BIBCUR *NE '*NONE') THEN(CHGCURLIB +
CURLIB(*CRTDFT))

CALL PGM(&BBASE/BOOTAPPLI) PARM(&BBASE)

IF COND(&BIBCUR *EQ '*NONE') THEN(CHGVAR +
VAR(&BIBCUR) VALUE('*CRTDFT'))
CHGLIBL LIBL(*NONE) CURLIB(&BIBCUR)

DOFOR VAR(&F) FROM(1) TO(2741) BY(11)
CHGVAR VAR(&BIB) VALUE(%SST(&BIBLIST &F 10))
IF COND(&BIB *EQ ' ') THEN(LEAVE)
ADDLIBLE LIB(&BIB) POSITION(*LAST)
ENDDO

GOTO CMDLBL(FIN)

ANOM: RCVMSG MSGTYPE(*LAST) MSG(&MSG)
SNDUSRMSG MSG(&MSG) MSGTYPE(*INFO)

FIN: ENDPGM

Partager cet article
Repost0