Archive for the ‘Computers’ Category

USB Charging/Docking station

Saturday, September 6th, 2008

I’ve been looking for a setup to handle all of the USB devices I have, which also need to be plugged in to charge. I’ve seen a few plans for nice charging stations to make, but nothing that incorporates the computer connectivity. Why would I want to build two things stations when a single one would do?

So I started looking at the USB 2.0 spec about power requirements. As it turns out, externally powered hubs are required to supply 500 mA to all ports. It is also recommended that the hub draw its power from the bus, to allow continued operation in the absence of the external power source. What is not specified is if the hub is required to deliver power to the ports when it is not receiving power from the bus. If the device does power the ports when the bus-supplied power is absent (e.g. – when the computer is off), then it should work as a charging station for USB-connected devices.

The downside to this is that I’m pretty sure the boxes of these hubs aren’t going to advertise whether or not they deliver power to the ports when the bus power is removed, which means trial-and-error. I am going to guess that the cheaper hubs probably wouldn’t go to the trouble to handle switching power to the ports based on the availability of the bus power. So hopefully my trial-and-error won’t cost me too much.

Now I just need to decide what I want this station to look like, and how I’m going to flush-mount access to the unused ports. Maybe the hub also needs to be easily disassembled :)

Computer Nerd Test

Tuesday, July 29th, 2008

Think you’re a computer guru? Not just someone who ‘knows a bit about computers’, but someone who lives, eats, and breathes the world of computers? Take the quiz and see how you do. Okay, InfoWorld didn’t call it the Computer Nerd Test, and I normally don’t think of them as the type that would put out a quiz with this level of nerdiness required. There’s an answer guide at the end.

Out of a possible 100 points, I got 55…guess I’m not as big of a nerd as I thought! Leave your scores in the comments!

Take the Computer Nerd Test

Spoiled by work?!?

Thursday, August 30th, 2007

I think working at Xetron has spoiled me some. Sure, if you talk to me I’ll complain from time-to-time about the political issues in the company, but that’s probably present in all companies. What I mean, is that the pace of the work, and the expectation for picking up new material quickly has really pushed me to the point where classes like the one I’m at are really only useful for the materials which are given to us.

Since I’ve done some device driver work (very little, but some) before, I knew a little bit about the topic which I was coming into. Apparently, the little work I had done was at a large enough scale to cover a lot of the topics I didn’t already know from my architecture, compiler, and OS classes from grad school. So today I find myself sitting in the class thinking mostly about the work that is piling up back at work.

Timing of this trip has turned out to be less than optimal as I now have a rapidly approaching deadline to hit back home – woohoo for overtime I guess. I have one more trip out this direction (though for a much shorter period of time), and school starting before the deadline, not to mention 2/3 (of my 3 person team) will be gone for one of the weeks as well. So, we’ll see how quickly we can get things done I suppose :)

In other news, the presentation of the material in this class is somewhat less than what I expected. The book we were given is nice, though I would like an index for quicker searching. The materials the presenter is using doesn’t match our book however (he’s the author of the book, and so teaches from his “beta” copy), and is in exactly the same docbook-eque format. Now, I’m all for using some format like docbook for books (go figure), but for a presentation? He’s constantly scrolling around the screen, which after 4 days is kinda making me sick – and I can’t directly follow along with the book because, as I mentioned, it’s not exactly the same – though a lot of it is.

At least do what a lot of my professors have done – make landscape pdf pages of what you want to show, then go full screen and use the page up/down do move through the content! It’s much more presentable and can still be generated automatically from the source (not sure about docbook, but certainly from LaTeX). The other things that’s bugged me is the out-of-order presentation of the material. We’ve been jumping around to different chapters, making it hard to get an idea of what builds on what (if at all), and where we’re at in the progress of the course. Not a huge deal, just something my engineering brain doesn’t like to deal with. Anyway, if this is par for a RedHat course, I won’t be finding myself at another one anytime soon.

Training and the Internet

Tuesday, August 28th, 2007

I’ve had the chance over the past few days to have more access to the internet than normal – a lot more access. I’ve become very used to only getting on the internet for a few minutes a day while at work (unless I’m researching something), and then to check my email and things at home (which doesn’t take very long).

Currently, I’m in Baltimore at a device driver training class. The class for the most part is interesting, some material I already knew from the little device driver work I’ve done. After two days I certainly feel more comfortable digging around in kernel code, but the classes seem very long to me. Part of this can probably be attributed to the fact that I don’t know anyone else in the class. Anyway, the lack of discussion on my part leaves me with time, staring at a computer with an internet connection. After about 20 minutes total during the day to ready the news, I’ve got nothing else to do. And just like in high school, the labs don’t really appeal to me, since I can’t find much practical use for most of them in my daily activities.

Anyway, this break is almost over, and we start discussing race conditions and synchronization methods – a topic which I have fairly extensive experience with, despite most of my professors saying that most people don’t do concurrent programming (and almost no one does them correctly). There will be some new things – spinlocks , and the kernel lock and such, which should be interesting, but I think I could probably get most of it from the book. Oh well – maybe next time I can get someone to come to the training with me…

Iterator suffers a blow

Tuesday, March 27th, 2007

I came home tonight to work on HTG things since the prof for Advanced OS has called off class the rest of the week and didn’t have the decency to give us any of the papers to read. I turned the machine on, connected to the network, and then went to check my email. Suddenly, the system freezes – which has never happened on my system (X has frozen, but never the whole system). I reboot, thinking that this is just some new symptom of the hardware.

I am greeted with a kernel panic. Hmm…this doesn’t look right, maybe a new kernel was installed and I missed it. Reboot. Kernel panic. Okay…verging on insanity, another reboot. And another kernel panic. But this time I booted to the “recovery mode” kernel (which really just prints out more info). For some reason it shows no memory! Time for memcheck.

Now, I only have 768MB of RAM in this system – it’s about a 4-year old Inspiron 8500. The memory is on the bottom middle, and gets VERY warm during normal operation, and down-right toasty during heavy usage. Memcheck alost immediately started tossing errors. Sure enough, a bit is dead on one of the chips. Now to figure out which one. I pull larger chip out first and test the 256B DIMM – no errors. This is not going to be fun. I put in the 512MB DIMM and….no boot. No POST screen, just a blinking caps-lock light. Of course, this means that it is definitely dead.

I could put a new DIMM in the thing, but I’ve been looking into replacing it anyway. So now it’s time to start looking….

Cry Circular Dependences!!

Sunday, October 15th, 2006

So I’m reading Appendix A of the Computer Architecture book, which is all about pipelining.  Dr. Wilsey told us in no uncertain terms that if we couldn’t wrap our heads around the material in this chapter we would not understand anything the rest of the quarter.  The material: pipelining – some really cool stuff, but some really deep stuff at the same time (no pun intended for those who get it – for those who don’t, a deep pipeline is one that is very long and can take a lot of time to get through).

Anyway, Chapter 3 of the book is about more advanced concepts in pipelining – different dynamic scheduling techniques and the like, and we were told to read Appendix A before chapter three.  So I am most of the way through the appendix, and it says to read the first few pages of chapter three for some background information on the dynamic scheduling concept.  Flipping back ~900 pages, I get to chapter 3 and start reading the introduction – which promptly tells me to read appendix A before continuing with chapters 3 and 4!  This is where I cry circular dependences!

I briefly go forward to see what chapter 4 is about, and find that chapter 3 is ~100 pages.  At this point I say “Joe, what have you gotten yourself into?!?”  I reach for the pot of coffee, and decide to take a mental break to write this and fold my laundry. Luckily, chapters 3 and 4 are not on the first midterm…

Yes, dependences is a real word – though I think it is some English (that would be British English, not American English) extension of the word dependence.  Miriam Webster and Dictionary.com do not mention this form of the word directly, but bring up the entry for dependence.  I still have my doubts, but Kelly insists it’s the “cool” word to use…

Mythbox Lives Again!

Saturday, September 9th, 2006

Upon graduating college (literally on the way home from commencement) I purchased a working mythbox from a friend of mine before he made his way out to California. It was a nice fanless Via setup in a console-like case. Over a year later, I finally get around to working on it (hey, I’ve been a little busy).

It’s a system built on gentoo, so I had to remember a few things I haven’t done in quite a while to get the system updated. First off was to reset the root password, because I didn’t know what it was and neither did Rick. After searching through CD’s, I found a gentoo 2004.0 cd in the system itself! It was old, but it got me to the point where I could chroot to the disk and reset the password. Next step – update some severly out of date software (2 years of open source software must be like 20 in dog years or something like that).

It seems like the lirc build process is messed up badly – saying that it needs a version of autoconf at least 2.50, and I have 2.59 installed. Oh well, I’ll figure that one out eventually. Maybe I just need to reboot it for something in portage to catch up. MythTV is currently building. No chance of this thing being a compute CPU anytime soon. The ultimate goal of it it to be simply a MythtV frontend and I’ll do all recording on another machine. We’ll see how that works out!

Excel Conditional Formatting

Monday, June 19th, 2006

It’s a feature I have found handy in one major place: highlighting every other row in an excel sheet. You’d think they would have a button to do it, but conditional formatting is a suitable alternative.

  1. Highlight the area to apply the formatting to (all of it in my case)
  2. Go to Format->Conditional Formatting.
  3. Change the drop-down value to “Formula Is”
  4. Enter “=MOD(ROW(),2)=0″ (without the quotes) into the formula box.
  5. Click the formatting button and choose your format, and you’re done!

This information taken from Microsoft’s Help site.

Cray XT3 Supercomputer

Friday, June 2nd, 2006

I was out being a good nerd looking up specs (in this case processor specs) on some systems that I could never personally own (we’re talking multi-million USD systems here), when I came across this little tidbit of information I was not aware of: the new Cray XT3 systems use Opterons on their Processor Element boards! That’s pretty cool! Cray has pretty much always stuck to custom vector processors in the past. A few other things on the XT3 page that piqued my geek interest, and I will probably look into more soon include:

  • The Cray XT3 system incorporates a high bandwidth, low latency interconnect, comprised of Cray SeaStar chips and high speed links based on HyperTransport and proprietary protocols. The interconnect directly connects all processing elements in a Cray XT3 system in a 3D torus topology, eliminating the cost and complexity of external switches.
  • The Cray XT3 operating system UNICOS/lc is designed to run large complex applications and scale efficiently to 30,000 processors.
  • The Cray XT3 system maintains a single root file system across all nodes, ensuring that modifications are immediately visible throughout the system without transmitting changes to each individual PE. Â Fast boot times ensure that software upgrades can be completed quickly, with minimal downtime. Â In addition, the Cray XT3 system provides a set of administration tools for tracking and rolling back modifications to the root file system.
  • To maximize I/O performance Lustre is integrated directly into applications running on the system microkernel. Data moves directly between applications space and the Lustre servers on the I/O PEs without the need for an intervening data copy through the lightweight kernel.

These Cray guys certainly are up to some cool things, which for someone getting ready to enter the world of grad school in CS/CompE makes me look at their work a little closer!

HD-DVD vs. Blu-Ray

Wednesday, April 12th, 2006

I didn’t care too much when the VHS/Betamax wars were going on because of my age. Today’s format war has gone into swing – HD-DVD/Blu-Ray (BD) will prove to be an interesting mix. Personally I would like BD to take the title, and not just because Microsoft supports HD-DVD! Both technologies are a step in the right direction of storing more information on a medium that consumers are comfortable with: the 12 cm diameter flat disc. The Blu-Ray folks have approched the problem with a revolution, not just an evolution, of the current media. Both systems use a 405nm blue-violet laser for reading/writing data, but the optics used in the BD system are of a higher quality and can focus the laser to a 0.60µm dot while HD-DVD is at a 0.76µm dot. This allows a single-layer BD disc to hold up to 27GB of data! Meanwhile, a single HD-DVD disc can hold 15GB of data. For movies, this difference won’t mean much – since that much storage isn’t needed for HD versions of movies. For storing data it’s an entirely different matter!

From the HD-DVD wikipedia article

Why haven’t we seend DVD’s with more than two layers? I don’t know for sure, but my guess is because they are working with a legacy environment. The DVD spec was created in the early 1990’s, with the dual-layer option added later. The optics had to work in the 650nm and 780nm wavelength (for DVD’s and CD’s respectively), and the smaller dot size was largely an issue of focusing by moving the lens in closer to the disc (someone correct me if I’m wrong).

Both HD-DVD and BD have 2 lens systems, but because of BD’s superior optics, the focusing can be much more precise. TDK showed a 100GB, four-layer BD disc which, as best I can tell, is possible thanks to the higher quality optics in the Blu-Ray system. I think these kinds of advances will make Blu-Ray a better option for the large consumer base – not just movies, but computing too!

All of this was inspired by this article: ICv2 News – ‘Serenity’ First Universal Title on HD DVD

Of course, I REALLY hope these guys come out with a viable solution soon too.  Imagine 1.6TB with 120MB/s data rates from a 12cm disc! Ahh holography – isn’t physics fun!