Thursday, September 13, 2007

MSOSUG Live upgrade slides

Great turnout last night for the inaugural MSOSUG meeting.

Here's the slides I used for my talk on Live Upgrade.

Tuesday, September 11, 2007

Melbourne Solaris and OpenSolaris Users Group tomorrow night

Please join us for our first meeting!


Level 7, 476 St Kilda Road, Melbourne,


September 12th, 2007 at 18:00 for general discussion.
Speakers start at 18:30, and we expect that each speaker will take up to one hour.

  • Nathan Kroenert: Niagara 2 CPU and Architecture exploration
  • Boyd Adamson: Solaris Live Upgrade: Using and abusing

Coffee, Tea and soft drinks provided.

A note on access: The Lifts in the building and entrance to Level 7 automatically lock early in the evening, so access will be provided by Sun folks on-site. A sign will also be placed close to the ground floor lifts with a contact number, should you arrive after the start of the meeting.
The Melbourne Solaris and OpenSolaris Users Group exists to explore Solaris, OpenSolaris and closely related technologies.

For those looking for more information on what this group will do in the future, come along to the first meeting, as we'll be spending some time talking about what it is that everyone is most interested in exploring. It is hoped that over time, everyone participating will have something to share with the group, be it 'their' implementation of something, or someone exploring the deeper aspects of some particular Solaris feature, right through to folks who are interested in directly contributing to the OpenSolaris movement. We'll also discuss the preferred frequency of regular meetings.

If you are interested in Solaris, doing interesting things with, or on Solaris, we want YOU!
See you there!

Tuesday, August 21, 2007

zsh DTrace Provider

Since there’s an effort underway to instrument various shells with dtrace probes, I thought I’d work on my shell of choice, zsh. Also, Brendan twisted my arm.

We’re trying to keep some uniformity between the shells, so I’m implementing the probes that Alan Hargreaves has documented.

So far, I’ve mostly finished the following probes:

And in simple use they look like this:
$ cat $tests/test_func_simple.zsh

echo "Hello from function"
return 1


$ dtrace -n 'zsh$target:::' -c $tests/test_func_simple.zsh
dtrace: description 'zsh$target:::' matched 8 probes
Hello from function
0 51903 zsh_main:script-start
0 51898 runshfunc:function-entry
0 51896 execbuiltin:builtin-entry
0 51897 execbuiltin:builtin-return
0 51896 execbuiltin:builtin-entry
0 51897 execbuiltin:builtin-return
0 51899 runshfunc:function-return
0 51902 zexit:script-done
dtrace: pid 16530 exited with status 1

And for something more elaborate:

$ cat $tests/basic_args.d

#pragma D option quiet

zsh$target:::builtin-entry, zsh$target:::function-entry
printf("%15s: %8s line: %d\n", probename, copyinstr(arg1), arg2);

zsh$target:::builtin-return, zsh$target:::function-return
printf("%15s: %8s ret: %d\n", probename, copyinstr(arg1), arg2);

printf("Script %s starts\n", copyinstr(arg0));

printf("Script %s done, return: %d\n", copyinstr(arg0), arg1);

$ dtrace -s $tests/basic_args.d -c $tests/test_func_simple.zsh
Hello from function
Script ../../tests/test_func_simple.zsh starts
function-entry: func line: 0
builtin-entry: echo line: 0
builtin-return: echo ret: 0
builtin-entry: return line: 0
builtin-return: return ret: 1
function-return: func ret: 1
Script ../../tests/test_func_simple.zsh done, return: 1

Note that the line numbers are all zero at the moment since I haven’t provided them yet.
There’s a few more probes to come and some cleanup to do, but I’m hoping to have a patch available soon.

Thursday, July 12, 2007 now usable!

Great news from Michelle Olsen in this thread at the opensolaris discussions:

We also had a hardware upgrade last week for that has made a huge difference in performance, give it a whirl.

I've tried it and it actually feels snappy! The site had gotten so bad lately that I'd taken to downloading PDFs, rather than crawl from page to page.