00001
00002
00003 #include "ace/OS_NS_unistd.h"
00004 #include "ace/Sbrk_Memory_Pool.h"
00005 #include "ace/Log_Msg.h"
00006
00007 ACE_RCSID(ace, Sbrk_Memory_Pool, "Sbrk_Memory_Pool.cpp,v 4.3 2005/10/28 16:14:55 ossama Exp")
00008
00009 #if !defined (ACE_LACKS_SBRK)
00010
00011 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00012
00013 ACE_ALLOC_HOOK_DEFINE(ACE_Sbrk_Memory_Pool)
00014
00015
00016
00017 void *
00018 ACE_Sbrk_Memory_Pool::acquire (size_t nbytes,
00019 size_t &rounded_bytes)
00020 {
00021 ACE_TRACE ("ACE_Sbrk_Memory_Pool::acquire");
00022 rounded_bytes = this->round_up (nbytes);
00023
00024 void *cp = ACE_OS::sbrk (rounded_bytes);
00025
00026 if (cp == MAP_FAILED)
00027 ACE_ERROR_RETURN ((LM_ERROR,
00028 "(%P|%t) cp = %u\n",
00029 cp),
00030 0);
00031 else
00032
00033 return cp;
00034 }
00035
00036
00037
00038 int
00039 ACE_Sbrk_Memory_Pool::release (int)
00040 {
00041 ACE_TRACE ("ACE_Sbrk_Memory_Pool::release");
00042 return 0;
00043 }
00044
00045 int
00046 ACE_Sbrk_Memory_Pool::sync (ssize_t, int)
00047 {
00048 ACE_TRACE ("ACE_Sbrk_Memory_Pool::sync");
00049 return 0;
00050 }
00051
00052 int
00053 ACE_Sbrk_Memory_Pool::sync (void *, size_t, int)
00054 {
00055 ACE_TRACE ("ACE_Sbrk_Memory_Pool::sync");
00056 return 0;
00057 }
00058
00059 int
00060 ACE_Sbrk_Memory_Pool::protect (ssize_t, int)
00061 {
00062 ACE_TRACE ("ACE_Sbrk_Memory_Pool::protect");
00063 return 0;
00064 }
00065
00066 int
00067 ACE_Sbrk_Memory_Pool::protect (void *, size_t, int)
00068 {
00069 ACE_TRACE ("ACE_Sbrk_Memory_Pool::protect");
00070 return 0;
00071 }
00072
00073
00074
00075 void *
00076 ACE_Sbrk_Memory_Pool::init_acquire (size_t nbytes,
00077 size_t &rounded_bytes,
00078 int &first_time)
00079 {
00080 ACE_TRACE ("ACE_Sbrk_Memory_Pool::init_acquire");
00081
00082
00083
00084
00085 first_time = 1;
00086 return this->acquire (nbytes, rounded_bytes);
00087 }
00088
00089 void
00090 ACE_Sbrk_Memory_Pool::dump (void) const
00091 {
00092 #if defined (ACE_HAS_DUMP)
00093 ACE_TRACE ("ACE_Sbrk_Memory_Pool::dump");
00094 #endif
00095 }
00096
00097 ACE_Sbrk_Memory_Pool::ACE_Sbrk_Memory_Pool (const ACE_TCHAR *,
00098 const OPTIONS *)
00099 {
00100 ACE_TRACE ("ACE_Sbrk_Memory_Pool::ACE_Sbrk_Memory_Pool");
00101 }
00102
00103 ACE_Sbrk_Memory_Pool::~ACE_Sbrk_Memory_Pool (void)
00104 {
00105 }
00106
00107 void *
00108 ACE_Sbrk_Memory_Pool::base_addr (void) const
00109 {
00110 return 0;
00111 }
00112
00113
00114
00115 size_t
00116 ACE_Sbrk_Memory_Pool::round_up (size_t nbytes)
00117 {
00118 ACE_TRACE ("ACE_Sbrk_Memory_Pool::round_up");
00119 return ACE::round_to_pagesize (nbytes);
00120 }
00121
00122 ACE_END_VERSIONED_NAMESPACE_DECL
00123
00124 #endif