|
|
Tue, May. 3rd, 2005, 11:19 am Ian Murdock
I received over 80 e-mails complaining about Ian's post about Componentized Linux RC1, most suggesting that it was using Planet Debian as a medium for sending out press releases. Personally, I enjoyed Ian's posts and didn't have any particular problem with them being on Planet.
Ian's blog was removed with a comment left in the config file asking for a feed without the advertising content; being 12,000 miles away from home, without any local network (I'm borrowing bandwidth off an anonymous NETGEAR benefactor to type this), and with my home network unreachable (it appears dead) I hadn't had a chance to compose an email yet.
When I do get online again, I not only get mobbed but have some incredibly outrageous accusations made against me. I'm sure if you read Planet Debian, some of them will still be visible on the blogs of those who made them. I don't expect to receive any apologies, that's just the way Debian works.
So I've decided that I'm not going to maintain Planet Debian any longer, Mako has offered to do so instead. Direct your requests, problems and complaints at him now.
My partner complains every time I stab him with a fork, is he being unreasonable or am I just not doing it right?
Another long day today, woke up deciding that the squash last night with Thom was perhaps a bad idea and another hour in bed won over a pre-breakfast visit to the gym. I ended up being the first dish of the day again, yesterday with my almost Nat-like "demo coded the night before" and today with a BOF to gain insights on what our distro developers would like from the infrastructure management tools.  (Yes, Mark is wearing a "First African In Space" T-Shirt there.) Just enough of a break to write up what we discussed when joined in the BOF on improving package management tools. Some interesting ideas put forward by a few people, hopefully once the current mad rush is out of the way I'll get some time to work on dpkg and do some cool new development there, it really needs it after all.
So the first day of the Canonical Conference is now over, it was pretty successful I think, mostly a day of planning for the two weeks ahead and setting the agenda.  It's definitely going to be a fun couple of weeks, long days of working though, but the hotel's got plenty of ways to unwind. Got pleasantly thrashed at Squash by Thom May before dinner.
The two-week Canonical Conference starts on Monday, it's going to be a pretty intense time but should be great fun. We're often mistakenly called a UK company, in fact our staff are spread out across the world, and we've just as many Australian staff as we've got UK ones. Our company conferences are when we all get together in the same place for some high-bandwidth interaction rather than on IRC. It's really refreshing to work for a company that gets why community involvement is so important. Our mini-conference at Debconf4 was open to anyone who wanted to drop in and we've extended an open invite to anyone else who wants to join in.
Because I'm not going to let this lie ... here's the memory map table of evolution-data-server running on my machine.
08048000 184K r-x-- /evolution-data-server-1.0
08076000 8K rw--- /evolution-data-server-1.0
08078000 660K rw--- [ anon ]
b3bed000 272K rw--- [ anon ]
b3c31000 4K ----- [ anon ]
b3c32000 8192K rwx-- [ anon ]
b4434000 4K ----- [ anon ]
b4435000 8192K rwx-- [ anon ]
b4c35000 4K ----- [ anon ]
b4c36000 8192K rwx-- [ anon ]
b5436000 4K ----- [ anon ]
b5437000 8192K rwx-- [ anon ]
b5c37000 4K ----- [ anon ]
b5c38000 8192K rwx-- [ anon ]
b6438000 4K r---- /libc.mo
b6439000 32K r-x-- /libgcc_s.so.1
b6441000 4K rw--- /libgcc_s.so.1
b6442000 632K r-x-- /libstdc++.so.5.0.6
b64e0000 88K rw--- /libstdc++.so.5.0.6
b64f6000 20K rw--- [ anon ]
b64fb000 28K r-x-- /libfam.so.0.0.0
b6502000 4K rw--- /libfam.so.0.0.0
b6510000 28K r-x-- /libfile.so
b6517000 4K rw--- /libfile.so
b6519000 4K ----- [ anon ]
b651a000 8192K rwx-- [ anon ]
b6d1a000 4K rw--- [ anon ]
b6d20000 4K ----- [ anon ]
b6d21000 8192K rwx-- [ anon ]
b7529000 16K r---- /evolution-data-server-1.5.mo
b7530000 32K r-x-- /libnss_files-2.3.2.so
b7538000 4K rw--- /libnss_files-2.3.2.so
b7539000 32K r-x-- /libnss_nis-2.3.2.so
b7541000 4K rw--- /libnss_nis-2.3.2.so
b754f000 28K r-x-- /libnss_compat-2.3.2.so
b7556000 4K rw--- /libnss_compat-2.3.2.so
b7565000 1556K r---- /locale-archive
b76eb000 8K rw--- [ anon ]
b76ed000 684K r-x-- /libasound.so.2.0.0
b7798000 16K rw--- /libasound.so.2.0.0
b779c000 76K r-x-- /libsasl2.so.2.0.18
b77af000 4K rw--- /libsasl2.so.2.0.18
b77b0000 4K rw--- [ anon ]
b77b1000 16K r-x-- /libcrypt-2.3.2.so
b77b5000 4K rw--- /libcrypt-2.3.2.so
b77b6000 156K rw--- [ anon ]
b77dd000 1184K r-x-- /libc-2.3.2.so
b7905000 36K rw--- /libc-2.3.2.so
b790e000 8K rw--- [ anon ]
b7910000 500K r-x-- /libglib-2.0.so.0.400.4
b798d000 4K rw--- /libglib-2.0.so.0.400.4
b798e000 52K r-x-- /libpthread-0.60.so
b799b000 4K rw--- /libpthread-0.60.so
b799c000 12K rw--- [ anon ]
b799f000 16K r-x-- /libgthread-2.0.so.0.400.4
b79a3000 4K rw--- /libgthread-2.0.so.0.400.4
b79a4000 8K r-x-- /libdl-2.3.2.so
b79a6000 4K rw--- /libdl-2.3.2.so
b79a7000 12K r-x-- /libgmodule-2.0.so.0.400.4
b79aa000 4K rw--- /libgmodule-2.0.so.0.400.4
b79ab000 224K r-x-- /libgobject-2.0.so.0.400.4
b79e3000 4K rw--- /libgobject-2.0.so.0.400.4
b79e4000 4K rw--- [ anon ]
b79e5000 28K r-x-- /libpopt.so.0.0.0
b79ec000 4K rw--- /libpopt.so.0.0.0
b79ed000 280K r-x-- /libORBit-2.so.0.0.0
b7a33000 36K rw--- /libORBit-2.so.0.0.0
b7a3c000 4K rw--- [ anon ]
b7a3d000 16K r-x-- /libORBitCosNaming-2.so.0.0.0
b7a41000 4K rw--- /libORBitCosNaming-2.so.0.0.0
b7a42000 72K r-x-- /libbonobo-activation.so.4.0.0
b7a54000 12K rw--- /libbonobo-activation.so.4.0.0
b7a57000 56K r-x-- /libresolv-2.3.2.so
b7a65000 4K rw--- /libresolv-2.3.2.so
b7a66000 8K rw--- [ anon ]
b7a68000 24K r-x-- /librt-2.3.2.so
b7a6e000 4K rw--- /librt-2.3.2.so
b7a6f000 64K r-x-- /libz.so.1.2.1.1
b7a7f000 4K rw--- /libz.so.1.2.1.1
b7a80000 12K r-x-- /libgpg-error.so.0.1.2
b7a83000 4K rw--- /libgpg-error.so.0.1.2
b7a84000 4K rw--- [ anon ]
b7a85000 68K r-x-- /libnsl-2.3.2.so
b7a96000 4K rw--- /libnsl-2.3.2.so
b7a97000 8K rw--- [ anon ]
b7a99000 284K r-x-- /libgcrypt.so.7.3.0
b7ae0000 20K rw--- /libgcrypt.so.7.3.0
b7ae5000 60K r-x-- /libtasn1.so.2.0.7
b7af4000 4K rw--- /libtasn1.so.2.0.7
b7af5000 364K r-x-- /libgnutls.so.10.1.4
b7b50000 20K rw--- /libgnutls.so.10.1.4
b7b55000 136K r-x-- /libm-2.3.2.so
b7b77000 4K rw--- /libm-2.3.2.so
b7b78000 936K r-x-- /libxml2.so.2.6.11
b7c62000 32K rw--- /libxml2.so.2.6.11
b7c6a000 40K rw--- [ anon ]
b7c74000 324K r-x-- /libbonobo-2.so.0.0.0
b7cc5000 40K rw--- /libbonobo-2.so.0.0.0
b7ccf000 196K r-x-- /libgconf-2.so.4.1.0
b7d00000 12K rw--- /libgconf-2.so.4.1.0
b7d03000 352K r-x-- /libgnomevfs-2.so.0.700.3
b7d5b000 20K rw--- /libgnomevfs-2.so.0.700.3
b7d60000 132K r-x-- /libaudiofile.so.0.0.2
b7d81000 12K rw--- /libaudiofile.so.0.0.2
b7d84000 32K r-x-- /libesd.so.0.2.29
b7d8c000 4K rw--- /libesd.so.0.2.29
b7d8d000 76K r-x-- /libgnome-2.so.0.702.0
b7da0000 4K rw--- /libgnome-2.so.0.702.0
b7da1000 4K rw--- [ anon ]
b7da2000 44K r-x-- /liblber.so.2.0.130
b7dad000 4K rw--- /liblber.so.2.0.130
b7dae000 196K r-x-- /libldap.so.2.0.130
b7ddf000 4K rw--- /libldap.so.2.0.130
b7de0000 756K r-x-- /libedataserver.so.3.2.0
b7e9d000 20K rw--- /libedataserver.so.3.2.0
b7ea2000 536K r-x-- /libecal.so.6.1.1
b7f28000 60K rw--- /libecal.so.6.1.1
b7f37000 12K rw--- [ anon ]
b7f3a000 148K r-x-- /libsoup-2.2.so.3.2.0
b7f5f000 8K rw--- /libsoup-2.2.so.3.2.0
b7f61000 68K r-x-- /libegroupwise.so.3.0.0
b7f72000 4K rw--- /libegroupwise.so.3.0.0
b7f73000 4K rw--- [ anon ]
b7f74000 132K r-x-- /libedata-cal.so.5.1.2
b7f95000 12K rw--- /libedata-cal.so.5.1.2
b7f98000 160K r-x-- /libebook.so.8.0.1
b7fc0000 16K rw--- /libebook.so.8.0.1
b7fc4000 92K r-x-- /libedata-book.so.1.0.1
b7fdb000 8K rw--- /libedata-book.so.1.0.1
b7fea000 4K rw--- [ anon ]
b7feb000 84K r-x-- /ld-2.3.2.so
b8000000 4K rw--- /ld-2.3.2.so
bfffc000 16K rw--- [ stack ]
ffffe000 4K ----- [ anon ]
total 70292K
As you can see, by far the largest number of maps are shared libraries code mapped into the address space. There's also some read-only data (such as the locale archive, which is one of the largest). If your argument is that you don't want a GNOME application to load the GNOME libraries, well you're on crack. It's a GNOME application, it's written to use the GNOME libraries. A huge number of these are shared with other things so this isn't an issue unless you're just being silly. So what's the rest of it? There's a small collection of 8MB anonymous executable maps, these aren't heap, these are the stacks of each thread. It's a copy-on-write overhead so it's a possible 8MB, not an actual 8MB (unless you manage to recurse so deeply you hit your stack limit). Then we're left with a bunch of read/write data, most of these are backed by file to represent data taken directly from shared libraries of other files. There's a 16KB stack in there and finally a bunch of anonymous read/write data maps -- this is the heap, and if you total them up you'll see they only come to around 1MB. Neither ps nor top give you an accurate idea of the memory usage of a process because they tell you the virtual memory size, which is not a useful indicator. I'm always surprised when people believe this is a good indicator, have you never tried adding up the totals? Here's a quick thing to do that:
ps aux | awk '{if (NR > 1) print $5; if (NR > 2) print "+"} END { print "p" }' | dc
On my machine the total (which is in KB, remember) comes to over twice the available memory of my machine!
Uh, Erich, if eds loads every shared library and takes 80MB ... then the amount of memory you need for every other app is also 80MB, not 512MB.
79MB of that is shared with every other application loading the shared library, they all use the same copy.
Actually, the largest load time isn't anything to do with the size of the libraries, it's the symbolic relocation that needs to be performed -- this won't be any faster having loaded eds first.
GNOME do have a relatively slack attitude to memory management, but then memory *is* cheap these days. But you're vastly exaggerating it.
The GNOME footprint is 80MB, not 512MB. That's 432MB left for all your heap requirements, more than enough. In fact, on this GNOME-running machine with evolution, mozilla, xchat, gaim, etc. all running -- there's enough free memory that 280MB is being used for the page cache!
Erich thinks Evolution is hogging memory, it isn't!Most of that 80MB of memory eds is using is shared between the various processes. On my machine it's actually using around 1MB of memory and that's with quite a large calendar loaded into it. The alarm notifier is using 68MB? On my machine it's only actually using about 850KB. These two could probably be shrunk a little by more efficient structure layout and perhaps a little fine-tweaking of what memory is allocated and what is shared. Out of the rest of the memory you think Evolution is using, the largest chunk is actually libc6 and the locale archive, that's a block of memory shared by nearly every single process. Next you'll be going on a crusade why X needs over 128MB of memory ... when the largest chunk of that is just your video card memory mapped directly into its address space. Fri, Jul. 23rd, 2004, 02:13 am Epson Printers
Lars, my Epson Stylus C82 has a similar affliction; when not used for a while the ink clots up and doesn't print very well. On the front there's a button with an ink drop above it, normally used for telling the printer you want to change the ink cartridges. If you hold this down for three or four seconds, the printer will clean the head instead and let you print again. I use my printer so rarely that I have to do this nearly every time.
I will be voting against this proposal, and urge everybody else to exercise their vote and do the same.
Why?
Because I utterly oppose using the GR system to make decisions like this. I'm not against having AMD64 in the archive, in fact I think it should be there, but forcing it through GR is just wrong.
Sensible debate and discussion, with decisions made by those who have earned the trust and respect to do so is the right way. The decision of when AMD64 should be in a release belongs in various hands, FTP Masters and the Release Managers most notably. Sat, Jul. 3rd, 2004, 04:59 pm Tigers
Despite popular belief, it turns out that there are in fact tigers in Norway.  Giraffes and Zebras were also spotted, the question of the existance of lions outside of Kenya now needs to be re-opened!
You advertise your RSS feed as a UTF-8 feed and include both ISO-8859-* and UTF-8 characters in it; don't do that. Wed, May. 26th, 2004, 10:05 am Porto Alegre
Have arrived in Porto Alegre, Brazil safely; as others have noted our luggage got left in Paris because of a rapid connection due to a delayed flight, but hopefully that will arrive this afternoon. Will blog more later. Thu, May. 6th, 2004, 06:44 pm ACPI
In the end I chose the HP compaq nc4010; I had serious doubts about the build quality of the Dell, the Apple lacked working WiFi and no PCMCIA to get around that either and the IBM lacked a touchpad and Matt's problems haven't been encouraging. In general I've been extremely happy with it, every part of the hardware I've tried to get working so far has been pretty easy to get working. Bdale and Martin'a experiences with the nc4000 have been pretty helpful too. The one thing I've not been able to get working though is ACPI S3 suspend, or suspend-to-RAM if you prefer. The laptop goes to sleep just fine but doesn't wake up at all. Experiences of others on #debian-uk seem to concur this isn't specific of my laptop either, everyone's been playing with ACPI suspend over the last few days and I don't think anybody's got it working right yet. It's an obviously huge whole in the hardware support in Linux, a pity really because otherwise ACPI functions perfectly giving detailed information about the system and batteries. If anyone's got any idea where to start debugging why the laptop doesn't wake up, that'd be great; I'm going to see whether a serial console can produce any information during wake-up that I'm not seeing because neither the screen nor keyboard come back. Fri, Apr. 30th, 2004, 12:55 pm
Okay, so you didn't like the Pink ... if you've got Firefox or some other relatively friendly browser, you can select from one of three alternate stylesheets.
- Pink and Boxy
- Boxless
- Boxy, but not pink
Have a look at the site in each one, and comment on this to indicate which you like the best. I'll go with consensus, unless I choose otherwise. Or if you're feeling really clever, the HTML's pretty clean so why not just contribute your own alternate stylesheet? Tue, Apr. 27th, 2004, 05:15 am It's ... Pink!
You can blame algernon for getting Monkey Island stuck in my mind! So I managed to do all sorts of interesting work today, but you don't want to hear about that because I also uploaded the new CSS and templates for Planet Debian. Don't steal it this time, folks. As part of the new design, I'm going to use Hackergotchi instead of the old randomly sized pictures; I've been gimping up the missing ones, but it's slow and boring work. If you want to do your own, mail it in and I'll upload. Sun, Apr. 25th, 2004, 10:59 pm Play and Work
Tollef's been doing some good low-hanging-fruit picking in the dpkg bug list over the past week and made me realise how little I've actually been able to do on it recently. Gave myself a bit of a kick, and managed to grab a handful of easy bugs myself; not to mention finally catching up with all the translation and manpages updates (I hope). Had to haul out my Dutch dictionary to try and merge the mess of patches for that language, but I think I got it all right. Put it all together, along with the conffile bug that I fixed some time ago that really should be in sarge, and rolled a release. That killed about 42 bugs, only 600 odd to go. Jeff did some pretty rad work on Planet, coming up with an extremely elegant way to merge consecutive articles by the same author together. Of course, I couldn't let him get ahead of me again so I updated Planet Debian to use the new juice and hacked on Planet myself for a few hours and added the long-missing per-template configuration (so you can have differing numbers of items in each template) and a fancy-examples directory containing something prettier than the default examples. I've been dropping behind a bit with my Debian work recently, and despite "taking over" pkgconfig haven't yet had time to get the grips with that either. This lack of time has been largely due to my new job; which is taking a fair bit of my hacking energy at the moment. We had our first major face-to-face meeting a couple of weeks ago, and I got to meet some of my co-workers for the first time though I knew them all by reputation. I too have to work out how to properly balance Work and Play, so neither interferes with the other despite the high overlap in some areas. Hopefully as I get used to the new work pattern, things will balance out. Fri, Apr. 23rd, 2004, 10:32 pm Laptops
I'm in the market for a new laptop to replace my aging (and abused) Dell Latitude LS. My basic requirements are that it be about the same size (12"), preferably with integrated ethernet and WiFi capability and that the hardware is supported, or at least supportable, under Linux. I've basically whittled it down to the following contenders: If anyone's had any experience with any of these, or can suggest anything of a similar breeed, that'd be great. Make sure you suggest the name of a classic computer game to name the laptop! Talking of naming schemes, was having a debate with myself whether having to reinstall my desktop required me to change its name or not. Thankfully it looks like this won't be necessary after all, the computer wouldn't power up with the replacement drive I bought either so it looks like it was the PSU that was at fault; it could power up the smaller drive I use to install things, but not the faster main drives. A replacement PSU seems to have done the trick, thankfully I hadn't defenestrated the old drive yet.
Remember those problems with my graphics card I was having back in February that resulted in replacing my GeForce FX 5600 with an old 256 DDR? Well, the reason I'd replaced the 256 DDR in the first place finally came back to haunt me this morning. Bright patches of the screen (like, say, a window) would ghost across the rest of the screen slightly. A sign, I was told, that the card was on its way out and needed replacing. It was light enough not to be noticeable, until this morning, when I turned on the monitor all I was greeted with was a total mess of overlapping graphics. The card had died. First I had to check that the card had indeed died, and not the monitor, and thankfully plugging my laptop into the monitor gave a clear screen. I found the FX 5600 again and put that in, figuring I could live with some minor screen corruption until pay day next week. Problem solved, you might think... Except that after the stress of a few power cycles, the computer flatly refused to power up. Systematically unplugging devices and cards until it powered up happily led to my worse fear, the device preventing the power-up was the hard drive. Keybuk's 7th law of hardware:The expiry date of the warranty of any hardware device is always earlier than the expiry date of the hardware device. In this case, the warranty of the drive expired on 15th April, one week ago. |