Check that memory page is filled by zeros when a process gets it in first time


 
Thread Tools Search this Thread
Operating Systems AIX Check that memory page is filled by zeros when a process gets it in first time
# 1  
Old 11-13-2009
Check that memory page is filled by zeros when a process gets it in first time

I have to check whether AIX fills physical memory pages by zeros when they are given for a new process (or may be when they are freed from an address space, but it's hardly probable).

In other words when a process gets a new memory page, this one must be cleaned.

I've solved this issue for Solaris using DTrace.
I found out that in Solaris memory pages are cleaned by pagezero routine.
So using entry and return probes of fbt provider in DTrace and getting input and output of the functions which are used in pagezero implementation I achieved my goal.

And now I have to solve the same task in AIX.
As I understand the source code of AIX is closed and that way which was used in Solaris isn't fit.

First of all could you tell me how can I translate the virtual address which was gotten from malloc to the physical address?

I thought it's possible to do using kdb and its tr command.
But when I type the next command in kdb:
(0)> tr 0x20001878
i get the next result:
WARNING: 0000000020001878 invalid sid
where 0x20001878 is the address which was gotten from malloc, and sid - segment identifier.
May be it's because the main purpose of kdb is debugging of kernel extension and my actions are wrong?

My system: AIX 6.1 powerpc

---------- Post updated 11-13-09 at 04:01 PM ---------- Previous update was 11-12-09 at 04:56 PM ----------

Ok. One more question.
How can I get dump of whole computer's main memory (physical memory)?
Does AIX include some utility like memdump?
# 2  
Old 11-13-2009
Hi,

for your second question:

Code:
sysdumpstart -p

Starts dump in the primary dump device

Code:
sysdumpstart -s

Starts dump in the secondary dump device

For your first question - no idea - since all memory is all the time assigned to the vmm, and the vmm itself manages the memory cleanups, it's hard to say what AIX really does to cleanup the memory.
If you execute the crush command like I explained here and right afterwards the system dump, you might be able to determine what exactly happens to the memory.

Kind regards
zxmaus
# 3  
Old 11-16-2009
Thanks a lot.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How can I check actual memory usage each Process?

I can't check actual memory usage in the Redhat 5.5... The used memory is 14214 Mb of Total 15919 by Free -m command. I sum the RSS value on PS aux command result and the value is 5428.66Mb. Yes It's quite different actual usage memory and RSS value. So I added Shared memory value... (5 Replies)
Discussion started by: tom8254
5 Replies

2. Solaris

[DOUBT] Memory high in idle process on Solaris 10 (Memory Utilization > 90%)

Hi Experts, Our servers running Solaris 10 with SAP Application. The memory utilization always >90%, but the process on SAP is too less even nothing. Why memory utilization on solaris always looks high? I have statement about memory on solaris, is this true: Memory in solaris is used for... (4 Replies)
Discussion started by: edydsuranta
4 Replies

3. Shell Programming and Scripting

how to check whether a process started at particular time

I want to check whether a particular process has started at 10:00a.m or not. I can check process by ps -fu but dont know how to check it with respect to time. Could anyone help me with this? ---------- Post updated at 11:14 AM ---------- Previous update was at 10:52 AM ---------- can i use... (9 Replies)
Discussion started by: kishore kumar
9 Replies

4. Shell Programming and Scripting

How to pad with leading zeros for current time?

I'm using cygwin bash to submit scheduled tasks (kinda like cron jobs) in windows and the following script is giving me grief. I need to format the current time with leading zeros before 10AM for the hour field. In this example, I manually typed in "09:50" instead of using the `printf...`... (2 Replies)
Discussion started by: siegfried
2 Replies

5. Web Development

Page load time- local page

Hi Is there a way to calculate the page load time, I am trying to calculate the load time of a page locally. I found tools to do this over http or https but none that work locally. Any ideas? Thanks. (4 Replies)
Discussion started by: jamie_123
4 Replies

6. UNIX for Dummies Questions & Answers

Page Fault + Memory

I am not sure where to post this so i will put it in the newbie section. I have set up a bog standard debain 6, LAMP environment in the cloud. The specs 1 core at 2GH 2.5gb Memory running Jommla, with about 1.6K visitors a day. I am using AppFirst (appfirst.com) to monitor the... (2 Replies)
Discussion started by: waseem
2 Replies

7. SuSE

How to check Memory Utilization by each process

If following is the usage of cat /proc/meminfo MemTotal: 4051304 kB MemFree: 28544 kB Buffers: 216848 kB Cached: 3398628 kB SwapCached: 0 kB Active: 455460 kB Inactive: 3291612 kB HighTotal: 0 kB HighFree: 0 kB... (5 Replies)
Discussion started by: bryanabhay
5 Replies

8. Shell Programming and Scripting

Pls Help me out ... I want to check process status at regular intervals of time

I want to check process status at regular interval of time ... so i ha wirtten this BUT its not working when i placed this peace of code in .sh .. please help me out #!/bin/sh w = ps -ef|grep processname | wc - l echo $w if ; then Banner "Proceesname Problem" else Banner " Running... (5 Replies)
Discussion started by: srinivasvandana
5 Replies

9. UNIX for Dummies Questions & Answers

Left filled with zeros

Hi A question about numeric display there... Is there any option in awk that would prints a number with "left filled with zero" format, and how does it work with variable length definition? For instance IŽd like my variable to be left filled with 0s for a length of 3 in total: 4 would be... (3 Replies)
Discussion started by: Indalecio
3 Replies

10. Solaris

1. To know the Memory consumed by a process at a time

hello I am new to the UNIX I want to know what command is used 1.To know the Memory consumed by a process at a time . 2.To know the How many CPU's in a server. 3.To know the RAM size. 4.To know the Hard Disk size. (3 Replies)
Discussion started by: maheshkoushik
3 Replies
Login or Register to Ask a Question