Ultimately, the tremendous wait times for everyone in the 00s, and now the tremendous lines only for a few countries, come down to the maximum number of green card numbers being vastly inferior to the number of people that qualify for said visas and are already living and working in the US.
Even in cases where your employer isn't trying to actively exploit you, the difficulty at changing jobs during the green card process depresses wages. I come from Europe, but I came in as an EB3 in 2000, so I had to wait a good 7 years. I was the highest paid engineer in our small department, and the only foreigner, but I was worth a lot more in the open market than what my employer paid. My salary tripled in the next three years afterwards, as I was paid an entry level salary while being qualified for being a principal engineer at a far bigger shop.
But everyone talks about the H1B program, instead of just opening permanent residency to people that are, in practice, already permanent residents, just with less rights.