Once I was at an ATM machine, of course to get some money for a gift to a friend of mine. I keyed in the amount & was waiting for money. The machine took a while, printed the receipt, gave out the card. Yes that’s all. I got no money but a receipt saying that the machine gave this amount of money & that amount of money left in the account. I lost my tongue except to murmur Faaaark!. I pushed my card back in checked the balance in account & the machine was very happy to say that I’ve just lost this amount of money.
The gift I was planning to by was intended to be a wedding gift & my friend was/is not the kind which is gonna marry again ;). I went to the bank, talked to the pretty girl & my story didn’t amaze her in any mean. Hmmm…That’s something to think about.
Facing that inconvenience, my mind kept thinking of the very thing a lot, I mean about the technical stuff. Why the machine don’t handle that very little but so very important event? What’s the system run on an ATM machine? is it an embedded system? does it run GNU/Linux? :) hell a lot to think.
After few days I went on a long tour with two of my geek friends & the topic ATM took priority at a time. And my friends provided me with these info. There are ATM machines which runs Microsoft Windows XP :D (in Sri Lanka) & earlier days it was OS2, according to Such. Kunchana has seen windows XP booting on an ATM after a power down. [Wikipedia confirms Such and Kunchana :)]
In thinking deep about ATM machines I made some assumptions in my mind.
1) The machine keeps track of the money using some kind of a hardware mechanism or someone adds money & update records on the machine. So that the machine keeps track of the amount remaining. If this is the case it’s only a matter of a software modification to compare the remaining amount and requested amount to stay away from hassles.
2) Since there was no evidence to backup above assumption, I happen to think that ATMs don’t keep track of the amount of money they have. So in order to avoid problem I faced, the machines have to have a mechanism to keep track of remaining amount of money and of course compare the remaining and requested amounts.
appendage (17/12/09) :
This was quite an old writeup I never had chance to post till now. This is totally black boxed thinking without looking up Internet for more details how an ATM works. The incident I mentioned happened at Commercial Bank Nugegoda. I got the money back in my account in few days (The bank fixed it manually, I guess). I’ve heard few other cases like this but never again happened to me. And also Things should be changed and these problems should be ironed out by now. Anyway Off to Look up “How ATM works” :D