When I waited tables years ago, I was probably 17-18 at the time... I saw so much food go to waste it was almost sickening, also met a lot of people who weren't thankful for what they had. But I distinctly remember, and probably always will, this one older couple who came in once a week (either Saturday or Sunday) with their grandchild and sometimes a friend of their grandchild...the cook and I were on the same page, so I'd make sure I was waiting their table if I had to swap a table with another waitress and I'd always put on the order specifically who it was and how many children they had with them. They didn't have money, not a lot anyway, and the cook always made enough for 3-4 servings and I always charged them for one. I wouldn't accept their tip either, I'd put it towards their bill and give them some line about it being a special or something so they got change back, or I'd put my tips towards their bill and tell them the same thing. But the point is, little things like that, if everyone did it would make a huge difference in starvation and peoples lives... and I can see restaurants being able to feed 20-50 people a day, or more depending on how big of a place they are.
I also worked at a place, while I never saw it happen, I heard about it and I can see it happening because I've known the owner for 18 years. When he see's a child, whether parents got money or not he's handing them suckers. If he see's someone who looks hungry, he's been known to go back in his market, get food off the shelves and take it to them. Again, if market owners, small business owners did that, they could make a dent in helping to feed people... all that food is not going to be sold, a lot of it is going to go to waste on the shelves.
It's not entirely the governments problem, or fault, to take care of people...there are billions upon billions of people in this world, if just one out of every 1000 took the time to give a shit and help someone else things wouldn't be the way they are.
Sorry, I got to rambling there...