Просмотр исходного кода

Removed compatibility layer

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@8220 8c9fc860-2736-0410-a75d-ab315db34111
negelef 7 лет назад
Родитель
Сommit
6851f21e30
2 измененных файлов с 9 добавлено и 8 удалено
  1. 4 4
      source/Release.Tool
  2. 5 4
      source/Unix.WMPerfMonPluginMemory.Mod

+ 4 - 4
source/Release.Tool

@@ -600,8 +600,8 @@ PACKAGE ApplicationsMini ARCHIVE "ApplicationsMini.zip" SOURCE "ApplicationsMini
 	Errors.Mod errors.txt
 
 	# Access to system functions
-	UNIX { Unix.ProcessInfo0.Mod }
-	NATIVE, WIN { ProcessInfo0.Mod }
+	UNIX & ~COOP { Unix.ProcessInfo0.Mod }
+	NATIVE, WIN, UNIX & COOP { ProcessInfo0.Mod }
 	ProcessInfo.Mod
 
 	System.Mod
@@ -1012,8 +1012,8 @@ PACKAGE GuiApplicationsMini ARCHIVE "GuiApplicationsMini.zip" SOURCE "GuiApplica
 		BIOS.WMPerfMonPluginInterrupts.Mod
 		WMPerfMonPluginUsb.Mod WMPerfMonPluginNetStats.Mod
 	}
-	WIN { Windows.WMPerfMonPluginCpu.Mod Windows.WMPerfMonPluginMemory.Mod }
-	UNIX { Unix.WMPerfMonPluginCpu.Mod Unix.WMPerfMonPluginMemory.Mod }
+	WIN, COOP { Windows.WMPerfMonPluginCpu.Mod Windows.WMPerfMonPluginMemory.Mod }
+	UNIX & ~COOP { Unix.WMPerfMonPluginCpu.Mod Unix.WMPerfMonPluginMemory.Mod }
 
 	NATIVE, WIN {
 		WMPerfMonPluginModVars.Mod WMPerfMonPluginHeap.Mod

+ 5 - 4
source/Unix.WMPerfMonPluginMemory.Mod

@@ -11,12 +11,11 @@ TYPE
 	(* Heaps.GetHeapInfo is a slow operation. HeapHelper provides its results to multiple plugins *)
 	HeapHelper = OBJECT(WMPerfMonPlugins.Helper)
 	VAR
-		free, total : SIZE;
+		free, total, largest : SIZE;
 
 		PROCEDURE Update;
 		BEGIN
-			total := Heaps.HeapSize();
-			free := total - Heaps.Used();
+			Heaps.GetHeapInfo(total, free, largest);
 		END Update;
 
 	END HeapHelper;
@@ -34,9 +33,10 @@ TYPE
 			p.autoMax := TRUE; p.unit := "KB"; p.minDigits := 7;
 			p.noSuperSampling := TRUE;
 			p.helper := heapHelper; h := heapHelper;
-			NEW(ds, 2);
+			NEW(ds, 3);
 			ds[0].name := "Size"; INCL(ds[0].flags, WMPerfMonPlugins.Maximum);
 			ds[1].name := "Free";
+			ds[2].name := "LargestBlock"; INCL(ds[2].flags, WMPerfMonPlugins.Standalone);
 			p.datasetDescriptor := ds;
 		END Init;
 
@@ -44,6 +44,7 @@ TYPE
 		BEGIN
 			dataset[0] := h.total DIV 1024;
 			dataset[1] := h.free DIV 1024;
+			dataset[2] := h.largest DIV 1024;
 		END UpdateDataset;
 
 	END MemoryLoad;