Might have been native platform toolkit... ;) -kto
On Apr 7, 2014, at 12:12 AM, serguei.spit...@oracle.com wrote: > On 4/6/14 11:13 PM, Staffan Larsen wrote: >> Curious: What does NPT stand for? > > This is from Kelly: > > > The original purpose of this library was to provide some generic native > > platform tools > > for dealing with things that will happen BEFORE the JVM is started and Java > > code can be called. > > Thanks, > Serguei > >> >> On 4 apr 2014, at 18:52, Kelly O'Hair <kellyoh...@gmail.com> wrote: >> >>> Just as background information... >>> >>> The serviceability team should do what they think is right here, I'll just >>> provide some history... ;) >>> >>> The original purpose of this library was to provide some generic native >>> platform tools for dealing with things that will happen BEFORE the JVM is >>> started and Java code can be called. >>> >>> This was necessary for JVM agents (hprof, debugger backend, jvmti demo >>> agents) and any native code that was executed before the JVM had gotten off >>> the ground. >>> Doing arbitrary character encoding conversions to/from the various flavors >>> of UTF-8 is a nightmare outside Java. >>> And since the characters typed in on a java commandline is in the OS's >>> default platform encoding, and not in UTF-8, they need to be converted. >>> Since this native code was not part of hotspot, and was written in C, using >>> the hotspot functionality for this was not possible at the time. >>> >>> This logic was isolated because it was so OS specific and ugly, and we >>> (maybe just me) had visions of needed more in this library, and that maybe >>> we could limit the ifdef-mania to this library rather than scatter the same >>> ifdef-mania all over the rest of the JDK native code that lives outside >>> hotspot. >>> So it seemed natural to isolate it as a separate little library that could >>> be unit tested on it's own. >>> >>> It's extremely likely that it could be trimmed down, and as more and more >>> OS default encodings become UTF-8, maybe it' will eventually become >>> obsolete. >>> >>> Hope this helps. >>> >>> -kto >>> >>> On Apr 4, 2014, at 9:28 AM, Dmitry Samersoff wrote: >>> >>>> Hi Everybody, >>>> >>>> We have an libnpt.so[1] in JDK. This library contains bunch of UTF >>>> related functions. On a brief investigation it looks like most of these >>>> functions are not used. Six functions below called one time each from >>>> share/back/* and hprof_init.c [2] >>>> >>>> Should I file a CR to have it cleaned up - remove npt library as a >>>> separate entity and move few utf functions that really used to place >>>> where it actually called. >>>> >>>> >>>> [1] Library sources location >>>> >>>> src/share/npt >>>> src/solaris/npt >>>> src/windows/npt >>>> >>>> [2] Library usage >>>> >>>> src/share/back/transport.c: >>>> >>>> utf8FromPlatform >>>> utf8ToPlatform >>>> >>>> src/share/back/inStream.c: >>>> >>>> utf8sToUtf8m >>>> utf8sToUtf8mLength >>>> >>>> src/share/back/outStream.c: >>>> >>>> utf8mToUtf8s >>>> utf8mToUtf8sLength >>>> >>>> >>>> src/share/demo/jvmti/hprof/hprof_init.c >>>> >>>> utf8ToPlatform >>>> >>>> >>>> -Dmitry >>>> >>>> -- >>>> Dmitry Samersoff >>>> Oracle Java development team, Saint Petersburg, Russia >>>> * I would love to change the world, but they won't give me the sources. >