Ursprngliche Aufgabe von CMESS war es, bei Write-Back-Caches das Vorhandensein oder Fehlen des sogenannten Dirty-Tags zu ermitteln. Die Rechner laufen auch ohne dieses zustzliche SRAM, aber langsamer (insbesondere unter OS/2, NT, Linux, NextStep ..). Daneben eignet sich CMESS hervorragend, um die Performance des Datenflusses der CPU/Cache/Hauptspeicher-Implementation zu bestimmen. CMESS schlsselt auf, ob Cache Hits oder Cache Misses, Dirty- oder Clean-Zugriffe vorliegen und bestimmt mit einer durch Simulation gewonnenen Gewichtung einen Mittelwert fr typische DOS- (640 KB) und Windows-Anwendungen (4 MByte). Fr die Schreibzugriffe bentigt CMESS sehr viel Heap (2*L1-Cachesize + 1* L2-CacheSize). 486er mit externem L2-Cache von 512 KB brauchen daher einen Heap von 528 KB. Diese lassen sich somit nicht aus dieser Turbo-Vison-Shell heraus aufrufen, sondern nur auf der Kommando-Ebene und auch nur dann, wenn keine greren Treiber (auer ggf. HIMEM.SYS) und TSRs eingebunden sind und DOS (ab Version 5.0) in der HMA weilt. !! Voraussetzungen und Einschrnkungen !! Caches nur bis max. 512 KByte L2-Cache mu direct mapped sein Interner Cache (486er, Pentium) mu eingeschaltet sein keine aktiven Watchdog-Timer und SMM-Interrrupts Zur Messung ist der unbedingt der Real-Mode ntig! DOS-Boxen von Windows, OS/2, NT fallen daher aus, ebenso Memory Manager la Qemm, Max und EMM386 Defaultmig stoppt CMESS den Transfer-Befehl REP MOVSB aus, der derzeit immer noch mit am hufigsten gebraucht wird. Version 1.0 verffentlicht in c't 1/93 Version 1.1 Fassung auf der Heft-Sammeldisk/Mailbox ct0193.zip (Korrekturen dazu sieh c't 4/93 S.12) Version 1.3 Fassung auf der ctsi-Info-Disk V1.0 Version 1.3a Weniger Trashing zwischen Mecode und Daten leicht genderte Cache-Routine 1.3c Letzte nderung war "Verschlimmbesserung", fhrte dazu, da in schnellen Systemen der L2-Cache auf die doppelte Gre bestimmt wurde. Eine neue nderung fhrt zu einer krzeren Meschleife, so da Timing-Unterschiede prozentual grer und daher besser erkannt werden. Gleichzeitig wurde fr >486-Systeme die Diskriminate fr Write-Back-Erkennung von 1.1 auf 1.04 und fr L2-Erkennung von 1.2 auf 1.1 reduziert. Einbindung von iDX4. Dieser wurde von < V1.3c wg. der 16 KByte Cache als IBM486SCL/DLC erkannt. (verffentlicht in Version 1.0 in c't 1/93) Name : ctCM.exe DOS : ab DOS 3.x Proz : ab 386SX Parameter: [Transfertyp][Timer][Cachegre] Transfertyp: MOVSB (Default), MOVSW MOVSD STOSB STOSW STOSD LODSB LODSW LODSD Timer: T0 (Default) System-Timer 0 T1 Refresh-Timer 1 - ist exakter, kann aber zu Parity-Problemem fhren !!! nicht fr PS/2 !!! T2 Timer 2 Cachegre: L1=xxx in KB, bersteuert die ermittelte L1-Cachegre L2=xxx in KB, bersteuert die ermittelte L2-Cachegre VideoTransfer: Vid Mit Transfers von und zum Videospeicher (Default Videomodus = $13); Vid=xxx Mit im Videomodus xxx (dezimal) oder $XXX (hexadezimal)