os detect functions
 gcl