After all the clauses in the bsd license still limit your 'freedom' in this sense.
"This sense" refers to "People could make changes to our library, use them in their commercial service and not make changes public.". BSD does not restrict freedom in this sense. The only restrictions are those 2,3 or 4 clauses listed on the license. The GPL tells you want you can do, the BSD tells you want you can't do (which isn't much).
You can try to redefine free all you want. If one party loses rights at the expense of the other, calling it "free" is disingenuous at best.
Linus claimed he wasn't aware of the existing BSD projects, so he wasn't trying to "do his own thing" either.
BTW, there are 4 major flavors of BSD.
So yes, you have to create procedures or functions to import C functions. These are often called bindings, and there's a thin and thick variety. There are numerous examples of Ada using C libraries. I've personally rewritten thick bindings for expat and zlib. The GNAT compiler has an in-built function to generate bindings given a C header or a C++ header, so the majority of the work is done for you.
As far as verbosity goes, I don't consider verbosity a detraction although I realize many people do. Yes, it's verbose, although the machine code it gets compiled to isn't much bigger than C.
Also I believe some embedded systems have already been written in Ada. Here's a link to the most secure OS in the world: Integrity RTOS. Green Hills is one the main commercial solutions for Ada, so it's likely most of RTOS is written in Ada or SPARK, although it doesn't say on the product page. There are other Ada OS projects out there, so the answer is yes, somebody wants to write an OS in Ada.
As you suggested, I won't comment on ObjC because I can't speak intelligently about it.
Do you even know anything about Ada, or are you just spewing? At least put in a caveat if you aren't familiar with a topic rather than lumping things together with topics you may know.
And asking that question basically pegs you as a jerk.