ooomru
C OOOMRU SOURCE PV090527 26/04/24 08:23:15 12524 SUBROUTINE OOOMRU (N) C---------------------------------------------------------------------- C C DESACTIVATION MRU C C N=1 OUVERTURE DES CHAINES MRU : LES SEGMENTS DESACTIVES C AVEC LE PARAMETRE MRU SERONT CHAINES MRU (TANT QUE LES C CHAINES MRU SONT OUVERTES) C N=0 FERMETURE MRU : LES SEGMENTS MRU SONT C TRANSFERES DANS LES CHAINES LRU CORRESPONDANTES C (CF TABLE MZCMRU) C C----------------------------------------------------------------------- C %INC IOOADR %INC IOOADZ %INC IOODES %INC IOOSGM %INC IOOWCOM C DIMENSION IDMRU(4) C if (thread) call ooogll(1) IF (N.EQ.1) THEN MDOPCHN(MRU)=MDOPOCHN MDOPCHN(CMRU)=MDOPOCHN MDOPCHN(OMNOMOD)=MDOPOCHN MDOPCHN(OMMOD)=MDOPOCHN ELSE MDOPCHN(MRU)=MDOPFCHN MDOPCHN(CMRU)=MDOPFCHN MDOPCHN(OMNOMOD)=MDOPFCHN MDOPCHN(OMMOD)=MDOPFCHN IDMRU(1)=MDACHN(MRU) IDMRU(2)=MDACHN(CMRU) IDMRU(3)=MDACHN(OMNOMOD) IDMRU(4)=MDACHN(OMMOD) DO I=1,4 20 ISMRU=MDISG(IDMRU(I)) IF (MSIDS(ISMRU).NE.IDMRU(I)) THEN IDE=MSIDS(ISMRU) ITYP=MDTYP(IDE) ICAT=MDCAT(ITYP) ICHN=MDNCHN(ITYP) IF (ICHN.EQ.0) GO TO 950 IF (ICAT.EQ.MDBLOCK) THEN ISMK=MDISG(MDMK(IDE)) ISS1=MSMKISS(ITYP) ENDIF IDEA=MDACHN(MZCMRU(ICHN)) MDCHN ,IDEA(IDE) MDQUEU(ITYP)=MDLRU IF (MDIO(ITYP).EQ.MDBUF) THEN MDIO(ITYP)=MDNBUF ENDIF MDTYP(IDE)=ITYP IF (ICAT.EQ.MDBLOCK) THEN ISS2=MSMKISS(ITYP) MSMKSTAT(ISMK,ISS1)=MSMKSTAT(ISMK,ISS1)-1 MSMKSTAT(ISMK,ISS2)=MSMKSTAT(ISMK,ISS2)+1 ENDIF GO TO 20 ENDIF ENDDO ENDIF if (thread) call ooogll(0) RETURN C----------------------------------------------------------------------- C C MESSAGES D'ERREUR C 950 CALL OOOERR (IDE,-1,'TYPE DE SEGMENT INVALIDE') STOP 16 END
© Cast3M 2003 - Tous droits réservés.
Mentions légales