You are viewing a plain text version of this content. The canonical link for it is here.
Posted to kato-spec@incubator.apache.org by Stuart Monteith <st...@stoo.me.uk> on 2009/12/10 11:47:46 UTC
Andrew Johnson's comments: part 2
Hi,
As before.
Page 31
=======
(20).
getInstalledMemory
"the amount of physical memory installed in the system..."
System = Partition? What about VM
---
(21).
Need Image.close() - need to tidy up the temp files etc?
Might get I/O Exception with subsequent accesses.
Page 32
=======
(22).
What happens if InetAddress hostname in dump environment is different to
where dump is examined?
e.g. host = secret.mycompany.com 10.2.3.66 } won't resolve elsewhere.
Page 33
=======
(23).
There should be a page break before "Interface ImageRegister" as it has
become separated from its description.
Page 34
=======
ImageRegister
=============
(24).
How to show NaT on IA64?
Normally Long for 64bit registers.
Need new type.
Perhaps implementation defined?
- or conditionally return
public class NaT extends Number
Page 35
=======
MemoryAccessException
======================
(25).
Missing comma in
public MemoryAccessException(ImagePointer badPointerString description)
^^
ImageSection
============
(26).
(In)Consistency of method names
ImageSection getBaseAddress
JavaStackFrame getBasePointer
ImageStackFrame geeBasePointer
JavaVMOption getExtraInfo
CorruptData getAddress
ImageSymbol getAddress
MemoryAccessException getAddress
ImagePointer getPointerAt
ImageAddressSpace getPointer
JavaRuntime getJavaVM
JavaObject getID
also getID ImagePointer String
Page 36
=======
(27).
ImageSection.getName()
"Note that sections of the image which have no specific name will
receive a name synthesised by the implementation."
^^^^
Page 39
=======
ImagePointer
============
(28).
getPointerAt()
What happens if there is a 32-bit & 64 bit process in the address space.
Would this always return a 64bit pointer.
(29).
Mention endian conversion.
(30).
Also: getPointerAt(long index, int size) for mixed mode processes.
Page 41
========
ImagePointer
============
(31).
Also "getCharAt". Does "getBooleanAt" make sense?
Page 43
=======
DataUnavailable
================
(32).
Should DataUnavailable be DataUnavailableException?
ImageAddressSpace
=================
(32).
_BPX_SHAREAS see something like
(Andrew is talking about a z/OS environment variable. This allows
commands in the UNIX shell to share the same address
space. If you are interested,
http://publib.boulder.ibm.com/infocenter/zos/v1r9/index.jsp?topic=/com.ibm.zos.r9.bpxb200/shbene.htm)
Page 44
========
DiagnosticException
===================
(33).
Need String getID() method returning? decodable id or String? 0x123
Page 45
=======
(34).
ImageThread.getID()
If numeric should it be passable e.g. 0x1234 or 567
Perhaps suggestion?
Page 47
=======
ImageFactory
============
(35).
public Image getImage(File imageFileFile metadata)
^^
Missing comma.
(36).
Consider:
boolean testImage(File imageFile)
boolean testImage(File imageFile, File metaData)
(or isValidImage)
Give a quick guess if the file will work.
Page 48
=======
(37).
public String getValidFileExtensions()
^^
List or array List<String> or String[] ?
(It is actually a String array. I've fixed up the words to say "array",
but the formatting of the document
has ommitted the square brackets).
(38).
String[] ImageFactory.getValidFileExtensions()
Arrays are modifiable - is that safe? i.e. is it a copy?
Page 49
=======
ImageProcess
============
(39).
getID()
Given choice make parsable using Long.decode() 0x123
(40).
getLibraries()
throws DataUnavailable
CorruptDataException
only List which also throws exceptions
- why is this like this method?
Page 51
=======
ImageProcess
============
(41).
getPointerSize()
Current supported values are 31, 32 or 64.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This is an implementation statement that maybe useful in this spec.
Page 52
=======
ImageStackFrame
===============
(42).
getBasePointer
returns the base pointer of the stack frame
Always the lowest address?
Consider
getSection for the frame
or getSections - e.g. IA-64
Need size& sections could overlap between ImageStackFrames
+---+
| |
| |
+---+
| |<- parms/args
+---+
| |
| |
+---+
Page 53
=======
(43).
getProcedureName()
. libname(sourcefile)::entrypoint+-<node></node>offset
^^^^^^^^^^^^^
(the xml appears spurious - the document generation needs to be fixed)
(44).
getProcedureName()
Returns:
? module + address (no offset)
e.g. system32@0x1234
or system32::0x123456
(45).
Consider new class
ImageLocations
getModule
getProcedureAddress
getSymbol
getSymbolOffset
getFileName
getLineNumber
(46).
Also line number.
lib(source.c:25)
Page 55
=======
ManagedRuntime
==============
(47).
getVersion
Throws DataUnavailable also? - which system property is this like?
(48).
getFullVersion Throws DataUnavailable?
----------
That's the end of the Image and ManageRuntime API. I'll continue Java in in part 3.
Regards,
Stuart
--
Stuart Monteith
http://blog.stoo.me.uk/