Personal info for rowledge

This person is currently certified at Master level.

Name: tim Rowledge

Homepage: http://www.rowledge.org/tim

Notes: VM & systems dweeb of ludicrously long standing. VMMaker author/keeper. Artist for the Squeak logo. Sarcastic bastard. Sex god. Freshly minted Canadian.

This person is:

Recent diary entries for rowledge:
RSS

15 May 2005  »

Cool. We just had a Black Bear swimming in our pond. Not every day you see that, even out here.

The performance issues with the 64b VM seems have been solved now; the use of inline static functions works ok but isn't optimised quite as well as 'real' code. Making macros available for platforms with such problems restored benchmark figures and other fixes done in the process of finding the problem have made small improvements over that.

11 May 2005  »

Another six months, another diary entry. Hope you all like the 'squeak people moves to Germany' logo!

My email address and website have had to move following a set of senility related problems on sumeru - it is after all a seven year old pentium - 66 running a version of linux so old that just logging in raises a cloud of dust. So, I have 'www.rowledge.org' all set up and ready to go and the email address should now be 'tim@rowledge.org'.

The VM is now almost clean for 64bit machines. There is work left to do on making it easy to use and a number of changesets need adding to the update stream. Some plugins still need cleaning up so volunteer to fix any you depend upon. Neither I nor Ian have time to hit them all. I'm a bit concerned that my performance results have dropped significantly with these changes but so far nothing stands out as a likely cause. So far noinfo on performance results for other platforms.

In my last entry I referred to the release of the host windows work; since then there has been zero, zilch, none, no, zip, interest in doing anything with it. Makes me wonder why I bother.

6 Nov 2004  »

Golly doesn't six months go by quickly?

I've been busy though: a job, trips to LA (twice), Portland (for Camp Smalltalk), Seattle (twice, once for Smalltalk Solutions), Victoria (three times) and Vancouver for OOPSLA. Far too much flying and I have to go to SFBA next week for yet another con.

We released Ariethfa Ffenestri a few weeks ago, providing a first version of portable host mulitiple windows. It currently works well on RISC OS and Mac with a Windows port beginning to get on the way. We (which is to say John McIntosh & I) have only made it work with Tweak so far since that is the target UI framework for the TK4 project which is paying for the work. Ned feels it should be a reasonably simple job to make it work for Morphic as well - I'm just about clueless on morphic so I'll take his word for it. For documentation about the VM framework, see the swiki page (http://minnow.cc.gatech.edu/squeak/3862).

22 May 2004  »

Damn 'int' ! It was a really bad idea to have variables in the Slang code default to int; anytime ObjectMemory stretches past the 2Gb range in your machine's memory map uses of int comparison are going to try to bite you in the delicate parts.

It took me three days of debugging why my new VM wouldn't load the package loader properly - was it my new file system? the new socket code? something basic in prim dispatching? Why did it work _with the same VM excutalbe_ just a couple of days before? I got to test that the sockets were fetching the same bytes, the files were writing and reading correctly and even that unzipping was working ok. Finally, a check on the actual oops being loaded in primloadsegment revealed that the magical 2Gb boundaryhad been breached! And the reason it worked a few days previously? Such a memory address is caused (or not) by a random number of previous application startup/closedowns claiming memory before Squeak is run.... grrrr.

Still, all I have to do now is fix one offending routine and at least that particular problem will go away. I've managed to get rid of several big irritants in the last couple of weeks. By reimplementing a RISC OS specific version of the basic file access prims I have been able to fake out the 'you cant open a file multiple times if it is open for write' problem. This is a peculiarity of RISC OS that has been pissing me off since the first release of Squeak but it was nicely disguised by a loadable filesystem called !raFS; you probably don't know what RISC OS loadable filesystems are but basically it is possible to trap file system calls and do things like making a big file look just like a DOS disk, or to treat a zip file as a directory, or... whatever. !raFS did this in a way that provided workarounds for several annoying aspects of older RISC OS releases. Sadly it doesn't work for my latest machine and I've been surviving without the ability to use a lot of useful stuff in Squeak for most of a year. Finally I got annoyed enough to get off my bum (or rather, back onto it) and sit at the keyboard to write a loadacode to keep a cache of previously opened files and their name, handle and a reference count. Now when a file is opened I check the list (just the once, I'm not Santa) and if it's not already open I open it and make a new list entry. The Squeak file structure is then given the handle as normal. Any later attempt to open the same file will get the same handle; closes simply decrement the reference count and actually close the file when appropriate. Think of it - Squeak now has a refernce counting garbage collector for file handles! Oh, since I don't need to have to silly variable for 'lastOp' anymore (not using those stupid posix fread things) I use that to store the last set position of the filestream so that there is no overlap between different users of the same handle. It turned out to only take a day to write and I even managed to get truncate into it! So far after a couple of weeks usage there seem to be no bugs. It's a load faster too. Now I get to see my recent chages log! Timestamps in my browser annotations! Monticello works!

I also needed to update the sockets code; it's been left alone apart from emergency fixes for several years. since I understand sockets about as well as Gumby understands hyperspatial trajectory analysis I was really dreading this. Then I had a brainwave - the old code was merely a hackedup copy of Ian P's unix socket code - could it possibly be... Yes! a few trivial hacks to compensate for some (hopefully ) small diferences and whammo, holy bits Batman, it works. So thanks again to Ian's neat code and the unsung good guys that wrote the RISC OS socket libraries to do a pretty good emulation of unix sockets.

So, good improvements in my life as a user of Squeak. I can finally get around to making use of Monticello on a regular basis.

2 May 2004  »

Time for more news, eh. We bought a house! Outside Qualicum Beach, up in the local hills, next to Little Qualicum River. Couple of acres, nice views, pond, trees. Not a terrifically exciting house but nice enough for now. Move in is last week of June. Only real problem at themoment is that broadband internet doesn't reach out that far yet so I'm going to be dailup for a while :-(

VMMaker is now pretty much done. Since we're in beta there will be nothing except critical bug fixes until 3.7 final is wrapped up. The latest version is VMMaker 3.7b4 and the only cheng from b2 is that primitive function addresses are cached in the MCache and accessed directly to call the prim. No particular use is made of this yet but it does allow us to cache a specialised version of a prim to suit the class format of the receiver. By avoiding format checks we can save a little time in the prim.

15 older entries...

This person has certified others as follows:

Others have certified this person as follows:

[ Certification disabled because you're not logged in. ]

[ Home | Articles | Login/Account | People | Projects ]