It varies for different airlines, so it's best to telephone your individual airline or check their website. It seems to be standard for international flights but not so for domestic flights.
These depend on the model of plane and some airlines also have a weight limit for allowing a child to use the bassinets. Check with your airline to determine if your child is below the weight limit specified for use of your airline's bassinets.
On long haul flights most airlines will provide Bassinets providing
for by infants under the age of 2 years with the condition that the
infant does not way more than 10kg and under 6 months of age
Article Source: http://EzineArticles.com/848615
These are fitted in front of the parents seat, so it's best you get the first row of seats in each block of the airline as these have more legroom.
How do you book it?
Once you've checked the website, call them to request for one. Ideally ee-confirm 48 hours before your flight that your bassinet is available. Sometimes you might have to wait till check-in to get it confirmed on certain airlines.
Is it tied to your seat assignment?
Yes - I assume you will get a seat with enough legroom to install the bassinet.
And if the seat with the bassinet is taken by someone without an
infant, will they change your seat assignment?
They should do so - provided you inform them in advance
From a few websites, you can see the policy for some airlines.
Continental offers bassinets for ticketed infants weighing 22 lbs (10 kg) or less on international flights operated with 777, 767 and 757-200 aircraft. Bassinets attach to the wall in front of the specific seats.
Qantas - If you require a bassinet onboard, you must notify Qantas at the time of reservation. Bassinets may be requested for infants up to 18 months of age, but the recommended age limit for bassinet use on international flights is eight months
United - A limited number of bassinets can be reserved for use, free of charge, on international aircraft (Boeing 747, 767 and 777). These bassinets are large enough to hold a child up to approximately six months old.
Air NZ only allows pre-booking for infants of 8 months and less, otherwise you must wait until check-in to see if a bassinet is available