En Ada 95 la mejor manera de implementar un semáforo es un objeto protegido.