17th November, 2006

The Real Meaning of Money /--evilbitz   

It’s time for a bit of philosophy :-)

It made clear to me, the meaning of money is “Making people do things for you”. In our lives, we have different goals, and in those paths to achieve those goals, we need other people’s help. We do not want to be bothered with sewing our own clothes, or picking oranges by ourselves.

It is the same when you are working for someone, he pays you to do whatever he wants, and it’s the same when one company pays another company for it’s services. We all try to make money in order to make other people do things for us.

Now, this is clear, but if we will give it a little thought we can see that rich people succeeded to be elevated than the others and they just got more people to do what they want.

Thinking that money equals a new mp3 player or a new TV set is just limited thinking.

So, the bottom line is money == people’s power.

If this is the meaning, then if you can make other people do things for you by other means, it’s like saving money. Charismatic people for instance are just born to be rich.

I came to think about it and it settles very good in my mind. Money… Personally, I look at money like a game, it’s like “points” for me. My goal is to achieve as many points as I can in order to win in this game of life.



Posted in philosophy, random | 4 Comments

13th November, 2006

Hitting the slashdot! /--evilbitz   

I’m sure you all know what is the slashdot effect? It became the goal of dedicated marketers to create a buzz and appear on slashdot. The goal is ~500,000 uniques visitors in a single day. It is more than enough in order to start something viral (like a new social networking website).

Last week, openhuman.org appeared on slashdot. openhman.org is a website that encourages people to be open about themselves. It seems to me that the whole website was designed in order to create a useless buzz. Well, it is kind of bad idea IMO. And the buzz of this website makes me sick. I mean, this sentence was taken from the website “This movement is inspired by Renaissance, Humanism FSF, GNU, Open Source Wikipedia”. How, for god sake, do GNU and Wikipedia relate to social networking??



Posted in random | 1 Comment

12th November, 2006

Does PayPal Sucks? /--evilbitz   

I’m using PayPal for more than a year now, the service is great but there are some flaws with it. I’m selling some digital products and I had some issues with serial refunders, those people who tries to get things for free. I’m not going to describe all the methods I know they use but there are methods that can cost you a lot and you (almost) always lose.

The most annoying thing is when the buyer doesn’t ask for a refund but rather just cancels his credit card transaction. When a buyer does this you can issue a charge-back, the first thing PayPal does is subtracting the amount that was canceled from your account. Then, a long 90 day journey begins where PayPal does you a “favor” and tries to get your money back. Along the way, you would find out that PayPal charged you $10 to handle this charge-back “as it is said in the user agreement”, but they don’t tell you this before you issue the charge-back. PayPal pays the credit card company in order to open a complaint against the buyer. The funny thing is, PayPal charges you with another $2.xx fee on those $10!! I don’t see the reason here…

If you sell digital products, issuing a charge-back would always turn out to be the wrong thing to do, as you will be paying some extra bucks and the buyer already got his reward. It is the credit card company interest to keep it’s customers satisfied, so no justice would be done. The bright side of the story is that you get the buyer’s name along with the transaction, so you can find your resort and send him anthrax to his house ;-)

I wonder if you can open a PayPal account, sell a digital product for $5,000 and buy it with your own credit card. then, all you need to do is close the PayPal account (withdraw the money) and cancel the credit card transaction…
Just kidding. kids, don’t try this at home :-)



Posted in hacking, random | 6 Comments

2nd November, 2006

Brief Introduction to PCI – Part II /--evilbitz   

This is the second part of my introduction to PCI article. If you haven’t read the first part, it is highly recommended that you’ll read it first.

So, in part I, we learned that all our PCI devices are connected through this main bus line to the CPU and memory. Any entity in the system can use the PCI bus, but it will first ask the bus arbiter to do so. A bus master is any entity that holds the bus and has an ability to write to it.

Any device can hold memory resources that are being used to transfer data between the driver and the device. Those addresses may be used for storing the current display buffer for example. This memory resource is part of the main computer’s RAM, so if the driver will want to copy data to the buffer, it will just copy the data to the RAM, to the address where the BIOS mapped the resource to.

BIOS stands for Basic Input and Output System, it is reliable to boot the system and provide it with some basic capabilities like primitive display adapter support. One part of the bios, moves through the existing PCI devices and supplies them with the memory resources that they require. After doing so, it boots the operating system which enumerates the PCI devices and existing memory resources.

Each PCI device is identified by a device ID and a vendor ID, both are part of the standard 64 bytes configuration space that each PCI device holds. So after the operating systems probes for this info, it searches for an appropriate driver to handle this device, this is being done by matching the device/vendor IDs.

In windows there is a kernel module which is called the Plug and Play manager that loads the right driver and let it initialize itself. There is also a file, for each driver, that describes these IDs. These files are called INF files and they provide info for the PnP manager for loading and installing the appropriate driver. To look at some examples, you can dig in the %windir%\inf directory.

Let’s go back to the memory resources. As I said, these are just some memory regions from the computer’s RAM that are being mapped to the PCI device as well. When a driver needs to write data it may utilize the main CPU for this task or it may use a special hardware unit which is called DMAC.

DMAC stands for Direct Memory Access Controller and it’s basically a processor that knows how to copy data from one place to another. Drivers are using this controller to carry out copying operations thus letting the main CPU be free to carry out other tasks.

DMA may be operate in two ways, the standard one, which by the DMAC reads each time the following byte from the source (the PCI device for example) and copy it to it’s destination (the RAM).

More sophisticated DMACs are using a method which is called flow-through. By which the controller just playing with signals over the bus and holds no actual data by itself. It operates in this manner: on the same time it issues a read operation to the device and a write operation to memory, letting the signals flow smoothly over the bus, the DMAC will keep doing this until it will finish its transaction.

I hope that this series of articles where informative and enjoyable for you. Keep to check out for new posts on this cool blog! :-)



Posted in design, lowlevel, programming | 5 Comments

Top »
"If you can't join them, beat them!"
Search Evilbitz: