In recent years, the emergence of the internet of things (IoT) has accelerated the quality of day-to-day tasks. With the rapid development of IoT devices, the cloud computing paradigm has become an attractive solution by facilitating on-demand services. However, the remote location of third-party cloud reduces the overall user experience while increasing the latency involved. Fog computing has been introduced as a promising solution by improving the overall service quality. Fog computing comprises distributed and heterogeneous fog nodes with limited resource capabilities. Therefore, managing fog resources while satisfying users' service quality is a challenging task. This study attempts to conduct a systematic review by examining high-quality research papers published between 2018 and April 2022. This paper aims to address current trends, challenges, and theoretical gaps with a wide range of open issues to guide the researchers and practitioners interested in carrying out the further research in the current domain.