Select one topic from the below areas Process synchronizationCPU schedulingDeadlock Choose two papers that relevant to the selected area, read and summarize the research work in the survey paper an

PROCESS SYNCRONIZATION


This paper delves into process synchronization. It looks at the various methods that teachers utilize in teaching process synchronization methods to their students. Additionally, the paper focuses on the derivation method as a way of solving synchronization challenges. Also, it looks at the future of process synchronization with regard to teaching and solving problems.

Introduction

Process synchronization entails managing process execution to ensure that no two processes access similar shared resources and data. Various kinds of processes synchronization exist, including mutual exclusion, cooperative and independent processes. In cooperative processes, one process execution has an effect on other processes, while in independent processes, there is no effect. When processes are synchronized with each other, inconsistency of data is eliminated. There is a need to teach this subject of processes synchronization and its relation to operating systems. Additionally, process synchronization is faced with various challenges that must be addressed, for instance, by using the derivation method. Teaching Method of Process Synchronization of Computer.


Operating Systems


Computer operating is one of the most important topics taught to the student taking computer science courses. It is essential to improve their computer literacy; hence educating them on process synchronization will help have qualified professions in this area. Although teaching this course's process synchronization may be difficult since it relates to the real world and no invented teaching method, the teachers rely on the knowledge they have, which may be difficult for the student to understand.

To effectively teach this subject of process synchronization, a method that deals with the modification of the Entity-Relation Diagram is used. It involves modifying the entity-relation figure used in the database blueprint to the most appropriate process synchronization examination (2). This teaching also helps to analyze the producer-customer problem using the entity-relation diagram. With the help of entity-relation diagrams, while teaching computer synchronization, it has been proved that students understand and even master it.


Modifying E-R Diagram


An Entity-relation diagram is a diagram that is used to describe a model in the real world. It has the following elements entity, contact, and attributes that are defined and explained below:

Entity- it is a process of dissimilar types that participate in process synchronization. Its term is used to define a related entity's process and usually inside a rectangular box.








Relationships- it reflects on the association inside the process and exterior relationships between processes. In the entity-relation diagram, diamonds are used to describe a relationship and inside the type of the relationship as indicated (2). The diamonds are connected to the process entity using arrowed lines or lines that are not arrowed.

An attribute describes the semaphore's name presented by the existence of the connection between process entities, specified by an ellipsis linked to a matching relationship with non-arrowed lines.





Drawing steps


  1. Types of abstracting entries It analysis the different sorts of entities process that have unexplained practical’s and abstract them to their respective rectangle diagrams.

  2. Clarifying the relationship between entries. It shows the relationship between the entries, and the relationships are ranged into mutual exclusion, process synchronization, and coexistence of joint exclusion and synchronization (2).

  3. Different methods of varying relationships Solving steps to mutual exclusion include:

  • Clarify resources needed for the completion of the process in the mutual excretion to the critical process

  • Use attributes to show semaphore in mutual exclusion

  • Set wait before the access to the critical area and set signal primitive at the exit area after the access to the critical area.

  • Wait and signal are needed to happen in duos in the same process.

Solving step to the synchronization process:

  • Determine the subsequence difference between the processes.

  • Use attributes to show semaphore in synchronization.

  • Set wait before the arrowhead as the entry area and set signal after string notch as the exit area.

  1. Analyze the procedure-consumer problem.


A Method for Solving Synchronization Problems


The method of solving synchronization process problems is based on invariant maintainers. The first challenge is considered and designed to the preferred synchronization property. The derivation is one of the methods, and it's discussed below.

Derivation Method


The derivation method ensures that nothing wrong happens during execution. Steps utilized in creating proof of a certain program are reserved by the derivation method. Asserting that something good happens is ensured by liveness property.


An atomic action results from the execution of a sequential process, and that of a similar program corresponds to a categorization of atomic actions for each procedure. A series of atomic actions produced by the processes are interleaved, which is termed history (1). Based on the quantity of atomic actions, the number of possible histories is exponential.

Programming logic can be used to create creativeness prove. A predicate that describes a set of situations is an assertion. Each atomic statement S is preceded and followed by assertion in the proof outline.


Interpretation of the resulting triples goes that the ensuing state will gratify Q if S's execution has begun in the corresponding state to P and terminates. The precondition of S is P and Q, being the postcondition of S.S alters the state from one in which P is accurate to one in which Q is true, thus seen as predicate transformer. Two requirements must be met when proofing an outline for a similar program. First is that the different process proof outlines must be interference-free. Secondly, each process proof must have desired characteristics to the effects of implementing the process in segregation (1). If S is executed, P must be valid when in each precondition and postcondition P in the same process and each atomic action S in some other process. S will not interfere with P, and that Statement S will be accomplished only when the precondition of S is true.


Requirement number two, noninterference, focuses on the concurrent execution effects. Hence, controlling process interaction is the main point differentiating the concurrent programming and sequential programming. When showing the noninterference, checking every atomic against each assertion in a given process must be involved. For its success, the work of polynomial in the sum of atomic action is required. Thus, the regular manifestation of safety properties can be indicated by a base, BAD, which should not be correct in any state. Examples of such cases include safety property include a mutual exclusion where a lousy state is one where more procedures are in their essential section. In case the BAD characterizes the states to be avoided. In this scenario, if TBAD is invariant, the program satisfies the BAD safety property, explaining why an assertion can be confirmed after each atomic action and is factual of every program state (1). Work needed to demonstrate noninterference is linear in the number of atomic actions, which must be revealed that each atomic action preserves an invariant when an invariant is utilized to express all associations between shared variables. In this view of the process, a derivation method is used.


Steps Involved


  • Define the problem

  • Outline the solution

  • Ensure the invariant

  • Outline the atomic


Conclusion


Process synchronization plays an essential role in operating systems by ensuring that process execution challenges are handled effectively. As such, there is a need to teach this phenomenon better by utilizing techniques like E-R diagrams, as explained above in this paper. Also, the challenges associated with process synchronization need to be addressed by using proven and reliable techniques such as the derivation method. Considering everything, more innovations in the field of process synchronization are admirable.


The Future of Process Synchronization


As we advance, pedagogical simulators ought to be widely used in teaching synchronization problems. The simulator allows students to understand better the challenges involved in processes to solve them appropriately using semaphores. More innovations related to other teaching process synchronization methods are expected to arise in the future, for instance, the Sync Teaching method. Additionally, the future is bright for deadlock detection and prevention algorithms.

References
  1. ANDREWS, G. R. A METHOD FOR SOLVING SYNCHRONIZATION PROBLEMS.

  2. Wang, J., Han, L., Wang, X., & Zuo, Y. (2015, July). Research on the Teaching Method of Process Synchronization of Computer Operating Systems. In 2015 International Conference on Computational Science and Engineering (pp. 369-374). Atlantis Press.