Who does the work in proof of stake (POS)? I heard about proof of stake lately, and people are saying you don't need GPU or any mining power, as long as you have the coins, they will generate you more coins (more coins you have, more earnings you get?). So I'm wondering, 1. doesn't that make the rich richer, and poor still poor? 2. If no GPU or mining power needed, what was done? Is there no algorithm to be solved? If yes, who does it in that case since people are not mining in POS?
In PoS each node is submitting hashes in a similar way to PoW, if a hash is found that is less than the target then the block is created by that node, sent to it's peers, and if they agree, pass it to their peers.
What is different is that in PoW each node iterates through as many hashes as possible, using data from past blocks and a random number called a nonce.  The more nonces and hashes per second a PoW miner makes, the better chance they have of finding a block.
In PoS there is no nonce, the miner (minter) is only allowed to use the data from the past blocks, and use that combined with the number of coins in each UTXO in their wallet.  So if you have 10 UTXOs then you can only produce unique 10 hashes per second.  To prevent people just making more UTXOs, UTXOs with a larger number of coins have a better chance of finding a valid hash, so there is no benefit in having 1 UTXO of 10 coins, or 10 UTXOs of 1 coin each.
A PoS minter could make more than 1 hash per UTXO per second, but the actual hashes would just be duplicates as there is no variance in the inputs.  So there is no reason to do so as its just a waste of energy to create duplicate hashes.

Theoretically the rich get richer in pure PoS, but this is easily avoided by using other mechanisms to assign coins, like work done on scientific computations (Curecoin/Gridcoin).  In PoW those with more money to invest in hardware and energy get richer, which leads to them getting more hardware, it's the same problem.