The present technological era is replacing both physically and logically draining hard-works of human beings by computerized technologies like Wireless Sensor Network (WSN) and IOT. WSN, being the basis for IoT, share the same set of Operating systems (OSs) with IOT. The numerous sensor nodes that are deployed in the application areas such as wild life study, underwater study etc could not be attended by the human beings, so they need well-defined programming. Learning the essential programming approach is the default first step to pass through for every researcher in any research domain. This paper discusses programming concepts for WSN considering four different OSs. The first part of the paper demonstrates execution of one nesC application in detail, as the nesC programming language is the de-facto standard for TinyOS. In the second part of the paper, programming is discussed in brief for the OSs Contiki, RIOT and freeRTOS. TinyOS being a highly documented and popular OS, has the limitations of having only the FIFO scheduling mechanism. This study helps to incorporate the scheduling techniques from other OSs in to TinyOS. This paper can be viewed as an introductory manual for the beginners in WSN programming.


Programming in WSN, Contiki OS, nesC programming language, RIOT, FreeRTOS.