< prev index next >

src/share/vm/runtime/os.cpp

Print this page




1611   }
1612   return result;
1613 }
1614 
1615 void os::initialize_initial_active_processor_count() {
1616   assert(_initial_active_processor_count == 0, "Initial active processor count already set.");
1617   _initial_active_processor_count = active_processor_count();
1618   log_debug(os)("Initial active processor count set to %d" , _initial_active_processor_count);
1619 }
1620 
1621 void os::SuspendedThreadTask::run() {
1622   assert(Threads_lock->owned_by_self() || (_thread == VMThread::vm_thread()), "must have threads lock to call this");
1623   internal_do_task();
1624   _done = true;
1625 }
1626 
1627 bool os::create_stack_guard_pages(char* addr, size_t bytes) {
1628   return os::pd_create_stack_guard_pages(addr, bytes);
1629 }
1630 
1631 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint) {
1632   char* result = pd_reserve_memory(bytes, addr, alignment_hint);
1633   if (result != NULL) {
1634     MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC);
1635   }
1636 
1637   return result;
1638 }
1639 
1640 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint,
1641    MEMFLAGS flags) {
1642   char* result = pd_reserve_memory(bytes, addr, alignment_hint);
1643   if (result != NULL) {
1644     MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC);
1645     MemTracker::record_virtual_memory_type((address)result, flags);
1646   }
1647 
1648   return result;
1649 }
1650 
1651 char* os::attempt_reserve_memory_at(size_t bytes, char* addr) {
1652   char* result = pd_attempt_reserve_memory_at(bytes, addr);
1653   if (result != NULL) {
1654     MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC);
1655   }
1656   return result;
1657 }
1658 
1659 void os::split_reserved_memory(char *base, size_t size,
1660                                  size_t split, bool realloc) {
1661   pd_split_reserved_memory(base, size, split, realloc);
1662 }
1663 
1664 bool os::commit_memory(char* addr, size_t bytes, bool executable) {
1665   bool res = pd_commit_memory(addr, bytes, executable);
1666   if (res) {
1667     MemTracker::record_virtual_memory_commit((address)addr, bytes, CALLER_PC);
1668   }
1669   return res;
1670 }
1671 
1672 bool os::commit_memory(char* addr, size_t size, size_t alignment_hint,




1611   }
1612   return result;
1613 }
1614 
1615 void os::initialize_initial_active_processor_count() {
1616   assert(_initial_active_processor_count == 0, "Initial active processor count already set.");
1617   _initial_active_processor_count = active_processor_count();
1618   log_debug(os)("Initial active processor count set to %d" , _initial_active_processor_count);
1619 }
1620 
1621 void os::SuspendedThreadTask::run() {
1622   assert(Threads_lock->owned_by_self() || (_thread == VMThread::vm_thread()), "must have threads lock to call this");
1623   internal_do_task();
1624   _done = true;
1625 }
1626 
1627 bool os::create_stack_guard_pages(char* addr, size_t bytes) {
1628   return os::pd_create_stack_guard_pages(addr, bytes);
1629 }
1630 
1631 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint, int file_desc) {
1632   char* result = pd_reserve_memory(bytes, addr, alignment_hint, file_desc);
1633   if (result != NULL) {
1634     MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC);
1635   }
1636 
1637   return result;
1638 }
1639 
1640 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint,
1641    MEMFLAGS flags) {
1642   char* result = pd_reserve_memory(bytes, addr, alignment_hint);
1643   if (result != NULL) {
1644     MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC);
1645     MemTracker::record_virtual_memory_type((address)result, flags);
1646   }
1647 
1648   return result;
1649 }
1650 
1651 char* os::attempt_reserve_memory_at(size_t bytes, char* addr, int file_desc) {
1652   char* result = pd_attempt_reserve_memory_at(bytes, addr, file_desc);
1653   if (result != NULL) {
1654     MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC);
1655   }
1656   return result;
1657 }
1658 
1659 void os::split_reserved_memory(char *base, size_t size,
1660                                  size_t split, bool realloc) {
1661   pd_split_reserved_memory(base, size, split, realloc);
1662 }
1663 
1664 bool os::commit_memory(char* addr, size_t bytes, bool executable) {
1665   bool res = pd_commit_memory(addr, bytes, executable);
1666   if (res) {
1667     MemTracker::record_virtual_memory_commit((address)addr, bytes, CALLER_PC);
1668   }
1669   return res;
1670 }
1671 
1672 bool os::commit_memory(char* addr, size_t size, size_t alignment_hint,


< prev index next >