 |
|
<<O>> Difference Topic
KellyOhair
(5 - 22 Oct 2007 - Main.kellyohair)
|
| | Senior Staff Engineer, Sun Microsystems, since March 1993.
| | | Priority is to get NetBeans performance problems fixed. Can't take credit for this much, the NetBeans team knew what to do and I just encouraged them to pursue the responsiveness issues.
| |
< < | * Sun Microsystems, Jan 2003 - present, Java Software Serviceability team and now Java Core | > > | * Sun Microsystems, Jan 2003 - present, Java Software Serviceability team and now Java CSG Core Technologies | | |
| |
< < | First major project was the conversion of the JPDA debugger backend from using the JVMDI interface, to using the JVM TI interface for JDK 1.5. The debugger backend implements the JDWP interface and is a native code shared library written in C that gets loaded into the running VM as an agent library. Second major project was the conversion of the demo profiling tool HPROF from JVMPI to JVM TI. The hprof agent library is also written in native code (C). This project included writing code to do byte code instrumentation or injection. In the process I've become fairly well trained in the JVM TI interface, which will displace both JVMDI and JVMPI. I continued on to creating demo's for JVM TI and writing articles on it's use and on converting from JVMPI to JVMTI. Lately I've become heavily involved in improving the build procedures in JDK 6.0 (Mustang) for all the JDK developers and the java.net project https://mustang.dev.java.net/. | > > | First major project was the conversion of the JPDA debugger backend from using the JVMDI interface, to using the JVM TI interface for JDK 1.5. The debugger backend implements the JDWP interface and is a native code shared library written in C that gets loaded into the running VM as an agent library. Second major project was the conversion of the demo profiling tool HPROF from JVMPI to JVM TI. The hprof agent library is also written in native code (C). This project included writing code to do byte code instrumentation or injection. In the process I've become fairly well trained in the JVM TI interface, which will displace both JVMDI and JVMPI. I continued on to creating demo's for JVM TI and writing articles on it's use and on converting from JVMPI to JVMTI.
Somewhere along the line (1996?) I got involved in the Peabody project which released the JDK6 sources under the JRL license.
So I became heavily involved in improving the build procedures in JDK 6.0 (Mustang) for all the JDK developers and the java.net project https://mustang.dev.java.net/.
Part of that effort centered around the development of a build/test system called JPRT, which would allow for a JDK developer to submit source changes and get builds and tests
done on all 8 build platforms. The JPRT system was created from a system called PRT that was and still is in use by the HotSpot? team to archive and verify HotSpot? code changes
on all platforms.
Late in 2006, I became involved in the OpenJDK? effort, helping to prepare the JDK7 sources for the official OpenJDK? launch at JavaOne 2007.
A great deal of my efforts today are on that project. In particular the transition of the OpenJDK? and JDK7 from the TeamWare? SCM system to
Mercurial, re-organization of the sources into independent components, and the transition of the OpenJDK? project to a real community "open source" project. | | |
|
|
<<O>> Difference Topic
KellyOhair
(4 - 05 Feb 2007 - Main.kellyohair)
|
| | Senior Staff Engineer, Sun Microsystems, since March 1993. | |
> > | | | | | |
< < | Primary java.net project: | > > | Primary java.net projects:
https://openjdk.dev.java.net/
https://jdk.dev.java.net/
https://jdk7.dev.java.net/ | | |
| |
< < | https://mustang.dev.java.net/ | > > | https://jdk6.dev.java.net/
https://jdk5.dev.java.net/
https://heap-snapshot.dev.java.net/ | | | | |
< < | Secondary project: | > > | Secondary java.net projects: | | |
https://solaris10-dtrace-vm-agents.dev.java.net/
| |
> > | Articles:
http://java.sun.com/developer/technicalArticles/J2SE/jvm_ti/
http://java.sun.com/developer/technicalArticles/Programming/jvmpitransition/
http://java.sun.com/developer/technicalArticles/Programming/HPROF.html
Interviews:
http://java.sun.com/developer/Meet-Eng/ohair/index.html
Blogs:
http://weblogs.java.net/blog/kellyohair/
http://blogs.sun.com/roller/page/kto
| | | In case you are wondering, I am a 'Mr.', not a 'Miss.' or 'Mrs.'. ;^)
My name is Kelly Thomas O'Hair, and I often use the signature '-kto'. Note that the last name is spelled O'Hair, and yes that apostrophe does cause problems for many programs that aren't prepared for it in a last name. ;^) | | | In case you are wondering, I am a 'Mr.', not a 'Miss.' or 'Mrs.'. ;^)
My name is Kelly Thomas O'Hair, and I often use the signature '-kto'. Note that the last name is spelled O'Hair, and yes that apostrophe does cause problems for many programs that aren't prepared for it in a last name. ;^) | |
> > | | | | | |
< < | I am currently working on a list of issues for the JDK at Sun Microsystems, but my primary task has been the improvement of the JDK builds. So for the past 6 months or so I have tried to address some of the build issues in the JDK. I'm comfortable with Makefiles and was insane enough to volunteer to help correct build problems. I will probably start posting/blogging/etc on various build related issues and at the same time try and fix any issues I run into that appear to be fixable. | > > | I am currently working on a list of issues for the JDK at Sun Microsystems, primarily related to improvements of the JDK builds and improving JDK development.
That has taken me into the world of JPRT, a build/test automation service for JDK developers, and also managed to drop me into the middle of the transition from
the Teamware SCM being used to Mercurial, a much faster and more modern SCM.
I'm a fairly recent convert to NetBeans and do all my JPRT work in NetBeans.
I've also done quite a bit of work on HPROF, the Java debugger backend, and anything related to JVM TI (see the above JVM TI articles). | | |
In case anyone is interested, here is a little employment history on me. No I'm not looking for a job, I love working at Sun and with my fellow Sun employees. Yes, the stock price is a bit low and the press says all kinds of nasty things about Sun, they just don't get it. The Sun products, both software and hardware, are the best on the planet, not everything is perfect, and Sun will admit that, but as a software developer, Solaris and Java beat all the competition, hands down. I continue to use the Ultra-60 I was given in 1999 (or was it 1998?), and it's now running Solaris 10 with DTrace, it's never been repaired or serviced, it just keeps on ticking. Computers are just appliances to me, they should just work, that's why I like Solaris and Java, and that's why I use Mac's at home, they just work, they should just work. |
|
<<O>> Difference Topic
KellyOhair
(3 - 04 May 2005 - Main.kellyohair)
|
| | Senior Staff Engineer, Sun Microsystems, since March 1993.
Primary java.net project: | | | * Sun Microsystems, Jan 2003 - present, Java Software Serviceability team and now Java Core
First major project was the conversion of the JPDA debugger backend from using the JVMDI interface, to using the JVM TI interface for JDK 1.5. The debugger backend implements the JDWP interface and is a native code shared library written in C that gets loaded into the running VM as an agent library. Second major project was the conversion of the demo profiling tool HPROF from JVMPI to JVM TI. The hprof agent library is also written in native code (C). This project included writing code to do byte code instrumentation or injection. In the process I've become fairly well trained in the JVM TI interface, which will displace both JVMDI and JVMPI. I continued on to creating demo's for JVM TI and writing articles on it's use and on converting from JVMPI to JVMTI. Lately I've become heavily involved in improving the build procedures in JDK 6.0 (Mustang) for all the JDK developers and the java.net project https://mustang.dev.java.net/. | |
> > |
In my spare time (of which I have very little lately), I try and research my family tree:
http://homepages.rootsweb.com/~ktohair/genealogy.html
-kto |
|
<<O>> Difference Topic
KellyOhair
(2 - 04 May 2005 - Main.kellyohair)
|
|
> > | Senior Staff Engineer, Sun Microsystems, since March 1993.
Primary java.net project:
https://mustang.dev.java.net/
Secondary project:
https://solaris10-dtrace-vm-agents.dev.java.net/ | | | | |
> > |
In case you are wondering, I am a 'Mr.', not a 'Miss.' or 'Mrs.'. ;^)
My name is Kelly Thomas O'Hair, and I often use the signature '-kto'. Note that the last name is spelled O'Hair, and yes that apostrophe does cause problems for many programs that aren't prepared for it in a last name. ;^)
I am currently working on a list of issues for the JDK at Sun Microsystems, but my primary task has been the improvement of the JDK builds. So for the past 6 months or so I have tried to address some of the build issues in the JDK. I'm comfortable with Makefiles and was insane enough to volunteer to help correct build problems. I will probably start posting/blogging/etc on various build related issues and at the same time try and fix any issues I run into that appear to be fixable.
In case anyone is interested, here is a little employment history on me. No I'm not looking for a job, I love working at Sun and with my fellow Sun employees. Yes, the stock price is a bit low and the press says all kinds of nasty things about Sun, they just don't get it. The Sun products, both software and hardware, are the best on the planet, not everything is perfect, and Sun will admit that, but as a software developer, Solaris and Java beat all the competition, hands down. I continue to use the Ultra-60 I was given in 1999 (or was it 1998?), and it's now running Solaris 10 with DTrace, it's never been repaired or serviced, it just keeps on ticking. Computers are just appliances to me, they should just work, that's why I like Solaris and Java, and that's why I use Mac's at home, they just work, they should just work. | | | | |
< < | -- Main.kellyohair - 14 Apr 2005 | > > |
* Lawrence Livermore National Laboratory 1977-1988, Graphics Group and Languages Group
Designed and developed graphics libraries, wrote documentation and created video classes on the use of various computer graphics libraries and programs. Ported an LR(1) parser generator to Pascal, developed a LEX generator, and constructed a complete LR system that could create lexical scanners and parsers in C, Pascal, or Fortran, given as input the regular expressions and context free grammar. Submitted this LRSYS to Argonne Labs. Wrote a C preprocessor, and C frontend, and then constructed an optimizing C compiler using the backend of the LLNL LRLTRAN (Fortran) optimizing compiler. Teacher at UC Davis Livermore extension campus for an undergraduate Computer Graphics class. Member of the ANSI C Standardizations committee, the representative from LLNL.
* Supercomputer Systems Inc. (SSI), 1988-1993 Compiler Group and Debugger Group
Developed C preprocessor, C compiler frontend, and inliner for the optimizer. The inliner was done at the intermediate level and was able to inline over object file boundaries when the ipa feature was in use (link time compilation). Worked on the debugger for C/Fortran and optimized/inlined code. Designed and implemented custom debug data for the object files which allowed for the optimized debugging capabilities, the debug information was derived from the compiler intermediate. Created a graphical viewer for the compiler intermediate form so that the compiler developers could easily view and diagnose problems in the compilers optimizations or code generation. Three software patents resulting from my contributions at SSI: 5187789, 5175856, and 5179702.
* Sun Microsystems Inc. Mar 1993-Dec 1996, DBX Group
I joined dbx group in 1993 and somewhere along the way became the dbx Project Lead for several years. I was involved in the dbx's that were released in SparcWorks? 3.0.1, SparcWorks? 3.0.2, Sparcworks 3.1, and WorkShop? 4. I also created the first release of the Debug Generation Library while in the dbx group.
* Sun Microsystems Inc. Dec 1996-Oct 1998, Java WorkShop? Group
In December 1996 I joined the Java WorkShop? group and worked on the Java WorkShop? build infrastructure and fastjavac. I spent many many hours working with javac and fastjavac, running all the Java language tests I could get my hands on, and in general keeping up with the JavaSoft? javac implementation. After the FCS of the English version of JWS2.0 I helped coordinate the engineering part of the L10n releases of JWS2.0 to 5 European and 3 Asian locales. I continued to work on the Java Product Line focusing on I18n and Build Infrastructure issues.
* Sun Microsystems Inc. Oct 1998-Mar 2000, Java Technology Group
On October 1, 1998 I joined the Java Technology Group working on Solaris Java VM's. I was involved with the 1.2 JDK releases on Solaris of the ExactVM? technology, mostly dealing with Product level engineering issues. The entire JTG team was moved into the Java Software division in March 2000.
* Sun Microsystems Inc. Jun 2000-May 2001, Forte Tools, Solaris "dbx" Group
Besides working in the dbx team again, between late 2000 and June 2001, I was also involved in a Java project to create a NetBeans profiler module out of some of the remains of Java WorkShop?, the intent was a Java only profiler for Forte For Java. Ultimately this project was put on permanent hold in June 2001 for various reasons, mostly because the JVMPI interface in J2SE? 1.3.1 at the time was very unstable. This work was done in parallel with the other work done below. Took over the dbg_gen (Debug Generation Library) and looked into getting all compilers on this library so that the dbx team could have better control over the "stabs" problem, i.e. dbx being broken because of a compiler stab bug, and not having any quick ways to get those problems fixed. Converted the Sun C compiler (acomp) to use the dbg_gen library, and made dbg_gen a shared library so that both F90 and cc could share the same library at runtime. The Workshop 6 Update 2 shipped with C and F90 on a shared library version of dbg_gen, generating stabs by default via the same code in the same shared library. Drew up some plans on converting C++ to use dbg_gen in a future release. At this time started looking into using libdwarf in dbg_gen to generate DWARF 2. This started my activity with the NCT project and I became a member of the NCT team.
* Sun Microsystems Inc. May 2001-Oct 2002, Development Tools, NCT project
I continued all my work related to the dbg_gen library and still owned this piece of software during the NCT project. NCT was a project that required the full interface descriptions of the Native code so that it could automatically build Java/JNI code over shared libraries. The C and C++ compilers were given -xnativeconnect options, and by use of the dbg_gen library, we could create a subset of DWARF Version 2/3 debug information that was 99% interface accurate and also a standards conforming way to store the interface information into a shared library. The work to convert C++ to dbg_gen was done by Vladimir Kozlov, so the NCT project supplied the resources to get all the Sun compilers onto dbg_gen. The Forte Developer 6.2 compiler release shipped with ALL the compilers using dbg_gen by default for stabs generation, and the same dbg_gen and debug data passed to it could also generate the subset DWARF Version 2/3 information for the NCT project. While in the NCT team, the dbg_gen ownership involved me in many aspects of the compiler release, including the OpenMP? debugging project. This project wanted a way for the optimizer (iropt) to also call dbg_gen to create more debug information, e.g. when a loop body is outlined for doing a parallel DO loop, etc. This created a need for dbg_gen to be able to store it's tables (already almost pointer free tables anyway) to disk and be read back in again. The dbg_gen tables were written to the compilers intermediate IR file and iropt could make more dbg_gen calls, and then it would tell dbg_gen to create the debug information. Later this turned into the OCD directed project of getting the compiler backends to use dbg_gen instead of creating raw stabs themselves, effectively isolating ALL debug generation to dbg_gen. It also allowed for the ability of our compilers to generate stabs or DWARF, without the backends or even compiler frontends caring what format it was. The latest compiler release ships a C compiler that has an option -xdebugformat=dwarf, so that the user can select DWARF as the debugging format of choice for C. The latest dbx can handle DWARF for C, and the hope is that some future release will expand this to C++ and F90, and perhaps even having the compilers use DWARF as the preferred debugging format.
* Sun Microsystems Inc, Oct 2002 - Jan 2003, Development Tools
Priority is to get NetBeans performance problems fixed. Can't take credit for this much, the NetBeans team knew what to do and I just encouraged them to pursue the responsiveness issues.
* Sun Microsystems, Jan 2003 - present, Java Software Serviceability team and now Java Core
First major project was the conversion of the JPDA debugger backend from using the JVMDI interface, to using the JVM TI interface for JDK 1.5. The debugger backend implements the JDWP interface and is a native code shared library written in C that gets loaded into the running VM as an agent library. Second major project was the conversion of the demo profiling tool HPROF from JVMPI to JVM TI. The hprof agent library is also written in native code (C). This project included writing code to do byte code instrumentation or injection. In the process I've become fairly well trained in the JVM TI interface, which will displace both JVMDI and JVMPI. I continued on to creating demo's for JVM TI and writing articles on it's use and on converting from JVMPI to JVMTI. Lately I've become heavily involved in improving the build procedures in JDK 6.0 (Mustang) for all the JDK developers and the java.net project https://mustang.dev.java.net/. |
|
<<O>> Difference Topic
KellyOhair
(1 - 14 Apr 2005 - Main.kellyohair)
|
|
> > |
-- Main.kellyohair - 14 Apr 2005 |
|