Realization of Parallelism in a Sequential Legacy „C‟ Program
Padmapriya Patil1, R. N. Kulkarni2

1Padmapriya Patil*, Assistant Professor, Department of Electronics and Communication Engineering, P. D. A. College of Engineering, Kalaburagi, India.
2Dr. R. N. Kulkarni Prof. & Head, Department of Computer Science & Engineering, BITM, Ballari, India.

Manuscript received on May 25, 2020. | Revised Manuscript received on June 29, 2020. | Manuscript published on July 30, 2020. | PP: 1179-1183 | Volume-9 Issue-2, July 2020. | Retrieval Number: B4158079220/2020©BEIESP | DOI: 10.35940/ijrte.B4158.079220
Open Access | Ethics and Policies | Cite | Mendeley
© The Authors. Blue Eyes Intelligence Engineering and Sciences Publication (BEIESP). This is an open access article under the CC BY-NC-ND license (

Abstract: In the present era of high speed computation with the multicore and other parallel processors in the computational field, there are still some organizations which rely on their old software systems developed years ago, which over the time have been subjected to continous development by different developers. Even though these softwares persist with the old and little in use technology, they still work to satisfy the operational demands of the organizations and have kept them going in the competetive industry. These systems which have with time grown into legacy, embed the major business functionalities of the organization, which is but effort of years. Hence a methodology is required to rebuild the legacy system to make them suitable for execution on to the present computation systems. The paper discusses a research work, wherein work is done to realize points of latent parallelism in a sequentially executing legacy ‘C’ program which is initially restructured and the design information abstracted. A technique using finite state machine is proposed to identify tasks, events, processes and jobs in the program, which helps to locate functionally independent computational units in the program. Furthur using the slicing technique, slicing is performed to extract out the appropriate lines of codes defined by the slicing criteria, which assembled together form a functionality that can be executed in parallel with other extracted functional modules or computational units on any parallel computational platform. 
Keywords: Restructuring, Legacy Software System, Functional Modules, Program Slicing, Functional Dependency, Parallel Computation Systems.