amaclin, you made an abrupt decision to start distinguishing between ASIC software and mining software, which are indeed different,
And this is where discussions about the mining process frequently fall apart.
Unless all parties in the conversation have agreed ahead of time on exactly what they mean when they use various terms, it can become quite a mess.
When you say "mining software" are you talking about:
bitcoind (which has had mining turned off for several releases now)?
The software that the mining pool operator is running?
The software that the participants of a mining pool are running?
The software that a solo-miner is running?
These are all very different software with very different purposes and very different things that they do.