Heat oil in a large skillet over medium high heat. Add onions and cook for 5 minutes. Stir.
Reduce heat to medium and cook, without stirring, until the pot begins to brown, about 5 more minutes. Reduce heat to low and add salt. Cook for another 30 minutes, stirring occasionally.
Meanwhile, heat broth in a saucepan until hot.
Transfer onions to a plate. Tent with foil to keep warm.
Add ½ cup of broth to the skillet, scraping with a spatula to get up and bits on the bottom. Pour the liquid back into the broth mixture.
Melt butter in a deep saute pan or risotto pan. Add rice and cook for 1 minute. Add wine and cook until absorbed, about another minute.
Ladle enough broth to cover and simmer, stirring often, until it is absorbed. Continue to add broth in this manner, stirring often, and cook for 20 to 30 minutes, until rice is tender but still has a bit of bite left. (You may not use all of broth.)
Stir in cheese and all but ½ cup of onions. Salt and pepper to taste. Serve warm, topped with the onions.