src/share/vm/services/virtualMemoryTracker.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/services

src/share/vm/services/virtualMemoryTracker.hpp

Print this page




 397 
 398   bool add_committed_region(const CommittedMemoryRegion& rgn) {
 399     assert(rgn.base() != NULL, "Invalid base address");
 400     assert(size() > 0, "Invalid size");
 401     return _committed_regions.add(rgn) != NULL;
 402   }
 403 };
 404 
 405 int compare_reserved_region_base(const ReservedMemoryRegion& r1, const ReservedMemoryRegion& r2);
 406 
 407 class VirtualMemoryWalker : public StackObj {
 408  public:
 409    virtual bool do_allocation_site(const ReservedMemoryRegion* rgn) { return false; }
 410 };
 411 
 412 // Main class called from MemTracker to track virtual memory allocations, commits and releases.
 413 class VirtualMemoryTracker : AllStatic {
 414  public:
 415   static bool initialize(NMT_TrackingLevel level);
 416 



 417   static bool add_reserved_region (address base_addr, size_t size, const NativeCallStack& stack,
 418     MEMFLAGS flag = mtNone, bool all_committed = false);
 419 
 420   static bool add_committed_region      (address base_addr, size_t size, const NativeCallStack& stack);
 421   static bool remove_uncommitted_region (address base_addr, size_t size);
 422   static bool remove_released_region    (address base_addr, size_t size);
 423   static void set_reserved_region_type  (address addr, MEMFLAGS flag);
 424 
 425   // Walk virtual memory data structure for creating baseline, etc.
 426   static bool walk_virtual_memory(VirtualMemoryWalker* walker);
 427 
 428   static bool transition(NMT_TrackingLevel from, NMT_TrackingLevel to);
 429 
 430  private:
 431   static SortedLinkedList<ReservedMemoryRegion, compare_reserved_region_base> _reserved_regions;
 432 };
 433 
 434 
 435 #endif // INCLUDE_NMT
 436 
 437 #endif // SHARE_VM_SERVICES_VIRTUAL_MEMORY_TRACKER_HPP


 397 
 398   bool add_committed_region(const CommittedMemoryRegion& rgn) {
 399     assert(rgn.base() != NULL, "Invalid base address");
 400     assert(size() > 0, "Invalid size");
 401     return _committed_regions.add(rgn) != NULL;
 402   }
 403 };
 404 
 405 int compare_reserved_region_base(const ReservedMemoryRegion& r1, const ReservedMemoryRegion& r2);
 406 
 407 class VirtualMemoryWalker : public StackObj {
 408  public:
 409    virtual bool do_allocation_site(const ReservedMemoryRegion* rgn) { return false; }
 410 };
 411 
 412 // Main class called from MemTracker to track virtual memory allocations, commits and releases.
 413 class VirtualMemoryTracker : AllStatic {
 414  public:
 415   static bool initialize(NMT_TrackingLevel level);
 416   
 417   // Late phase initialization
 418   static bool late_initialize(NMT_TrackingLevel level);
 419 
 420   static bool add_reserved_region (address base_addr, size_t size, const NativeCallStack& stack,
 421     MEMFLAGS flag = mtNone, bool all_committed = false);
 422 
 423   static bool add_committed_region      (address base_addr, size_t size, const NativeCallStack& stack);
 424   static bool remove_uncommitted_region (address base_addr, size_t size);
 425   static bool remove_released_region    (address base_addr, size_t size);
 426   static void set_reserved_region_type  (address addr, MEMFLAGS flag);
 427 
 428   // Walk virtual memory data structure for creating baseline, etc.
 429   static bool walk_virtual_memory(VirtualMemoryWalker* walker);
 430 
 431   static bool transition(NMT_TrackingLevel from, NMT_TrackingLevel to);
 432 
 433  private:
 434   static SortedLinkedList<ReservedMemoryRegion, compare_reserved_region_base>* _reserved_regions;
 435 };
 436 
 437 
 438 #endif // INCLUDE_NMT
 439 
 440 #endif // SHARE_VM_SERVICES_VIRTUAL_MEMORY_TRACKER_HPP
src/share/vm/services/virtualMemoryTracker.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File