Operating Systems Project

universal

University at Albany Department of Computer Science CSI 500

Assigned: Tuesday, February 21tst, 2023

Due: Tuesday, March 21st by 11:59 PM. Submissions with 20% penalty will be accepted by Thursday, March 23rd, by 11:59 PM.

Unlimited number of submissions is allowed.

Purpose

To develop a synchronous inter-process communication through the use of both fork(), pipe(), and exec() system calls. For this exercise only ordinary pipes are to be used.

What to Do

You are to develop a producer/consumer application. Both the C programming language and any distribution of the Linux operating system are to be used. Your solution must be structured as a set of services. The core service is the inter-process communication which it is referred here as the producer/consumer service.

Details

A synchronous producer/consumer pair of processes is to be created to support the service of replacing all lowercase letters in a set of strings of characters with their uppercase correspondent. The service above described will require support of a set of other services to perform

  1. the encoding and decoding of the data,
  2. to change lowercase letters into uppercase,
  3. to open and close files,
  4. to include and verify parity bits,
  5. to read from pipes, and
  6. to write to pipes.

Both the standard ASCII character set and odd bit parity are to be used. All data communications between producer and consumer are to be done by reading and writing through two shared pipes. The data generated by the producer is encoded and shared with the consumer through one pipe. The consumer decodes the message, modifies it, encodes it, and shares it with the producer through the second pipe.

You are to create a library to support your producer/consumer process activities. The file “encDec.h” is to be created and it must contain the prototypes of all code required to support the producer/consumer activities as described by the services provided by the three layers discussed below. All access to the services provided by this library must be done only through the use of any of the members of the exec() family of system calls. The three distinct layers to be created

are physical, data link and application and details regarding the services each one of them provided are as follows:

  1. The physical layer must contain routines to handle tasks such as
    1. converting a character into a binary bit pattern,
    1. converting binary patterns into characters,
    1. including a parity bit, and
    • checking and removing the parity bit.
  2. The data link layer must contain routines for
    1. framing (putting two SYN characters, a LENGTH character, and data into a frame), and
    • deframing (separating control characters from data characters).
  3. The application layer must contain routines to handle tasks such as
    1. reading data to be transmitted from input data files in the producer, and
    • writing received data into display (or output data file) in the consumer.

Your solution must also include a module to simulate transmission errors.

Information containing the original data is to be stored in a file with extension inpf. You are to use a set of temporary files to debug and document the results produced by the various activities performed during the processing of the required services. The encoded version of the input data, as well as the modified version of it are to be stored in files with the extension binf, and outf respectively. Files with the extensions chck and done will contain the encoded version of the file modified by the consumer and the decoded version of the data obtained by reading one of the pipes created respectively. Details regarding such files are provided by the table below.

File Characteristics
NamingContentsCreated byAccessed by
filename.inpfAny ASCII characteruserproducer/consumer
filename.binfEncoded (0/1) + parity + frame version of .inpfproducerconsumer
filename.outfUppercase version of .inpfconsumerconsumer
filename.chckEncoded (0/1) + parity + frame version of .outfconsumerconsumer/producer
filename.doneDecoded + Deframed + no-parity version of .chckproduceruser

The Producer

Creates strings of bits (‘0’ and ‘1’ characters) from the input files. All valid input files contain data made up of ASCII characters and have the .inpf file extension. The data to be transmitted must be structured as a set of frames. Each frame will consist of 2 SYN characters, ASCII 22, one control character to indicate the length of data block followed by a maximum of 32 data characters. Assume that there are no trailing control characters. Every block transmitted must contain 32 data characters except possibly the case where the remainder of the set of characters cannot fill the frame. Each character will consist of 7 information bits and a parity bit. The two tables below illustrate the structure of a frame created to transmit the “BCCA” character string. The top table shows the frame contents in decimal and in the table at the bottom, the actual contents of the frame have been encoded with characters ‘0’ and ‘1’ to simulate the binary representation of the characters used.

22224BCCA
00010110000101100000010011000010010000110100001111000001

After the two pipes are created, the producer application uses one pipe to share all the encoded frames with the consumer. The producer also reads from another pipe all data processed by the consumer, deframes the data received, checks and removes parity bit, decodes the dada obtained, and it stores it in a file named filename.done.

The Consumer

Reads all encoded frames through the pipe used by the producer to transmit data, deframes the data received, checks and removes parity bit, decodes the dada obtained, converts all lowercase characters to uppercase, encodes the converted characters, adds the parity bit, creates all needed frames, stores the resulting information in a file (.chck), and uses a pipe to share the encoded result with the producer.

Important Tasks

The following are the fundamental tasks to be done for this project:

  1. Create the C files needed for each of the three layers. Compile them and create your “encDec.h” file with the prototypes of all functions needed to provide the services defined by each of the three layers.
  2. Create the consumer/producer application, as discussed in this document, that uses two shared pipes for communication. Your consumer/producer application must contain the statement #include “encDec.h”
  3. Create and populate the filename.inpf. This file will contain all the original data to be shared between producer and consumer.
  4. Create the filename.binf. This is the binary (0’s and 1’s) version of the original data. This will help you check the correctness of your conversion module. This file is created by the producer, shared with the consumer through the pipe, and processed by the consumer.
  5. Create the filename.outf. This is the modified version of filename.inpf where all lower case letters have been replaced by upper case letters. The consumer is responsible for the creation of filename.outf.
  6. Create the filename.chck. This file is the encoded version of filename.outf with parity bit and frame included.

What to Submit

  1. Your solution must be uploaded to Blackboard.
  2. Copies of all source files as well as their executables, and any data you used for testing your solution must be included.
  • You are to place all files that are related to your solution as well as your report document into a .zip file. Your .zip file must follow the format: CSI 500 Project2 Your Name.
  • The documentation associated with your solution must be typeset in MS Word. Marks will be deducted if you do not follow this requirement.

Your program should be developed using GNU versions of the C compiler. Your solution must use Ordinary Pipes (Lecture 03 – Interprocess Communication; slides 34-36). It should be layered, modularized, and well commented. The following is a tentative marking scheme and what is expected to be submitted for this assignment:

  • External Documentation (as many pages necessary to fulfill the requirements listed below.) including the following:
    1. Title page
    1. A table of contents
    1. [20%] System documentation
      1. A high-level data flow diagram for the system
      1. A list of routines and their brief descriptions
      1. Implementation details
    1. [5%] Test documentation
      1. How you tested your program
      1. Test sets must include
        1. input files .inpf; binary files .binf; and output files .outf; as well as the. chck and .done files.
        1. You may use the quote below as one of your testing files. You may name it as winVirus.inpf.
    1. [5%] User documentation
      1. How to run your program
      1. Describe parameter (if any)
  • Source Code
    • [65%] Correctness
      • All required services must be accomplished using any member of the set of exec() system calls.
      • The file encDec.h must contain only the prototypes of the functions used to perform any service.
      • Any solution deviating from items (i) and (ii), stated above, will be considered not correct because they will be addressing a different problem instead of solving project-2.
      • An example illustrating the use of the encDec.h file, the use of execl() system call, as well as the accepted approach to add a service to your solution is provided in the project-2 document.
  • [5%] Programming style
    • Layering
    • Readability
  • Comments
    • Efficiency

Joke:

McAfee-Question: Is Windows a virus?

No, Windows is not a virus. Here’s what viruses do:

  1. They replicate quickly-okay, Windows does that.
  2. Viruses use up valuable system resources, slowing down the system as they do so-okay, Windows does that.
  3. Viruses will, from time to time, trash your hard disk-okay, Windows does that too.
  4. Viruses are usually carried, unknown to the user, along with valuable programs and systems. Sign… Windows does that, too.
  5. Viruses will occasionally make the user suspect their system is too slow (see 2.) and the user will buy new hardware. Yup, that’s with Windows, too.

Until now it seems Windows is a virus but there are fundamental differences:

Viruses are well supported by their authors, are running on most systems, their program code is fast, compact and efficient and they tend to become more sophisticated as they mature.

So, Windows is not a virus. It’s a bug.

Code to Illustrate the encDec.h File.

encDec.h
int toUpper( char *inData );
toUpperClient.c
#include <stdio.h> #include <unistd.h> #include <sys/wait.h>   int main(int argc, char *argv[]){ int pid = fork(); if( pid == 0 ){ printf(“Child!!!!\n”); execl(“toUpperService”, “toUpperService”, “z”, NULL ); } else if( pid > 0){ wait(NULL); printf(“Parent!!!!\n”); }
toUpperService.c
#include <stdio.h> #include <ctype.h> #include “encDec.h”   int main(int argc, char *argv[]){ printf( “%c\n”, toUpper( argv[1] )); }   int toUpper( char *inData ){ if( (int)*inData >= ‘a’ && (int)*inData <= ‘z’ ) return( toupper( *inData )); }
Order Now

Get expert help for Operating Systems Project and many more. 24X7 help, plag free solution. Order online now!

Universal Assignment (July 1, 2025) Operating Systems Project. Retrieved from https://universalassignment.com/operating-systems-project/.
"Operating Systems Project." Universal Assignment - July 1, 2025, https://universalassignment.com/operating-systems-project/
Universal Assignment March 18, 2023 Operating Systems Project., viewed July 1, 2025,<https://universalassignment.com/operating-systems-project/>
Universal Assignment - Operating Systems Project. [Internet]. [Accessed July 1, 2025]. Available from: https://universalassignment.com/operating-systems-project/
"Operating Systems Project." Universal Assignment - Accessed July 1, 2025. https://universalassignment.com/operating-systems-project/
"Operating Systems Project." Universal Assignment [Online]. Available: https://universalassignment.com/operating-systems-project/. [Accessed: July 1, 2025]

Please note along with our service, we will provide you with the following deliverables:

Please do not hesitate to put forward any queries regarding the service provision.

We look forward to having you on board with us.

Most Frequent Questions & Answers

Universal Assignment Services is the best place to get help in your all kind of assignment help. We have 172+ experts available, who can help you to get HD+ grades. We also provide Free Plag report, Free Revisions,Best Price in the industry guaranteed.

We provide all kinds of assignmednt help, Report writing, Essay Writing, Dissertations, Thesis writing, Research Proposal, Research Report, Home work help, Question Answers help, Case studies, mathematical and Statistical tasks, Website development, Android application, Resume/CV writing, SOP(Statement of Purpose) Writing, Blog/Article, Poster making and so on.

We are available round the clock, 24X7, 365 days. You can appach us to our Whatsapp number +1 (613)778 8542 or email to info@universalassignment.com . We provide Free revision policy, if you need and revisions to be done on the task, we will do the same for you as soon as possible.

We provide services mainly to all major institutes and Universities in Australia, Canada, China, Malaysia, India, South Africa, New Zealand, Singapore, the United Arab Emirates, the United Kingdom, and the United States.

We provide lucrative discounts from 28% to 70% as per the wordcount, Technicality, Deadline and the number of your previous assignments done with us.

After your assignment request our team will check and update you the best suitable service for you alongwith the charges for the task. After confirmation and payment team will start the work and provide the task as per the deadline.

Yes, we will provide Plagirism free task and a free turnitin report along with the task without any extra cost.

No, if the main requirement is same, you don’t have to pay any additional amount. But it there is a additional requirement, then you have to pay the balance amount in order to get the revised solution.

The Fees are as minimum as $10 per page(1 page=250 words) and in case of a big task, we provide huge discounts.

We accept all the major Credit and Debit Cards for the payment. We do accept Paypal also.

Popular Assignments

Nursing Ethics and Law – Henry Pearson Case Study

Nursing Ethics and Law – Henry Pearson Case Study Course Code & NameNUR1103 |Context of Professional PracticeAssessment Item and NameAssessment THREE | Case StudyAssessment Item TypeEssay/ Case studyDue Date & TimeWeek 10 | 15th March 23:59 hrsLengthEssay is 1200 words + or – 10%Marks and WeightingOverall mark is out of

Read More »

NUR3397 – Complex Care Case Study Presentation

Course Code & NameNUR3397 |Complex Care AAssessment Item and NameAssessment TWO | PresentationAssessment Item TypeIndividual oral presentationDue Date & TimeWeek 10 | 22nd April 23:59 hrsResults data will be returned to you three weeks after your submission dateLength12-15 minute oral presentation recorded to ZOOM cloud + or – 10%Marks and

Read More »

AI in Recruitment: Legal and Ethical Implications for Harmony Haven

PurposeThis assessment helps you demonstrate report-writing skills essential for HR and other professional roles. It develops your research abilities, including sourcing, reviewing, and synthesizing academic and non-academic literature. Strong report-writing skills support informed business decisions, enhancing your ability to assist managers and advance your career. AI in Recruitment: Legal and

Read More »

Youth Justice Crisis: Indigenous Incarceration in Australia

issues During Impact Root  cause Youth justice crisis ongoing Disproportionate indigenous youth incarcerations reports of abuse eg Don Dale Low age of criminal responsibility (10) – Systemic racism and overpolicing – Lack of diversion and rehabilitation pathways Word: 1000 Topic selected: Youth Justic Crisis, Assessment 1: Conflict Analysis Exercise –

Read More »

PV System Design and Energy Analysis for Residential Use

Executive Summary Provide a brief summary of the key methods and key results, max 500 words. 1.         Introduction (aims and objectives and brief description of the system studied and methods of the next sections) approximately half a page 2.         Solar irradiation analysis Provide location and data used. Provide hourly GHI,

Read More »

Assignment 3: Statistical Analysis and Recommendations for Enhancing HDI

Student Name:               Your full name Student ID:                     Your Student ID Make sure to delete the instructions!! Introduction: Include a succinct introduction at the start of your report. You may write a few sentences about purpose of this report, the type of analysis, or any other relevant information (about 50 words).

Read More »

Brian Old Age Case study Assignment

Assessment 1 – Written AssessmentAssessment TypePurposeDescriptionWritten AssignmentThe purpose of this assessment is to broaden each student’s understanding of the modulecontent using a case study and assessment toolsCase Study: Brian is an 84-year-old retired farmer in a rural area in Northern Territory. Hewas recently assessed following a minor motor vehicle accident

Read More »

Assessment name: Portfolio of planning cycle

Assessment name: Portfolio of planning cycleDue Date: Friday 13 June 11:59pmWeighting: 50%Length: 2000 wordsTask Description: This Portfolio is comprised of two tasks. You must submit your assessment as onedocument. Task 1: Anecdotal record and learning experienceAnecdotal recordView the video of pre-schoolers provided under the link “Video for Assessment 2” andcomplete

Read More »

NUR5327 Assessment 3 Assignment Help

Name NUR5327 Assessment 3 (Essay)Purpose The purpose of this assessment is to demonstrate your understanding of therolesof leadership and management in healthcare by identifying and analysinga change you have actively participated in, and how it relates to key topicssuch as interprofessional communication, evidence-based practice, and staffdevelopment.LearningOutcomes NUR5327 Assessment 3 Assignment

Read More »

Mathematics Investigation and Reflection Assignment Help

Submission: Mathematics Investigation and Reflection Assignment Help TurnitinFormat:Individual written document.Uses the current APA referencing style correctly.Length:2,000 wordsThreshold Detail:For this assessment task you must obtain at least 50% of the overall result (i.e. 25 points). If the total result for this unit is at least 50 points but you scored less

Read More »

FASS Research Proposal Template Assignment

FASS Research Proposal Template Word length2000 to 3000 wordsTitleUse a concise and descriptive title that accurately reflects the content of the proposal.Background context and significanceThis section should explain the background and context of the proposed research work,indicating the main contribution to knowledge you wish to make.Aims and objectivesInclude a clear

Read More »

Evidence to Inform Nursing Practice Assignment Help

Unit Code:   NURS12165 Unit Title:    Evidence to Inform Nursing Practice Assessment Three Type:                               Written Assessment Due date:                         Week 11: Wednesday, 28 May 2025 at 1600 (AEST) Extensions:                     Available as per policy Return date:                    Results for this assessment will be made available on Wednesday, 18 June 2025 Weighting:                       50% Length:                           

Read More »

NUR1120 | Burden of Disease and Health Equity

Assessment Item Task SheetCourse code andnameNUR1120 | Burden of Disease and Health Equity Assessment itemand nameAssessment Three | ReportDue date and time Week 11 | 22/04/2025 at 2359 hours AESTLength 1400 words (+/- 10% in each section) – includes in-text references, but not reference list.Marks out of:Weighting:80 Marks50%Assessed CourseLearning Outcomes(CLO)CLO1,

Read More »

PSY1040 Portfolio: Cultural Responsiveness & Self-Awareness

Course Code and NamePSY1040: An Introduction to Cultural Safety in PracticeAssessment Item Number and NameAssessment 2: PortfolioAssessment Item TypePortfolio PSY1040 Portfolio: Cultural Responsiveness & Self-AwarenessDue Date & TimeTuesday, 29 April 2025 (Week 12), 11:59pmLength2000 words – an average of 400 words per task.Marks and WeightingMarked out of: 100Weighting: 50%Assessed Course

Read More »

Innovative Digital App Development Report

OVERALL DESCRIPTION OF TYPE OF ASSIGNMENT Assessment 1- Type of Assignment Individual Written Report Details Individual Written Report 3,000 words (500 words of the Report is Contextualisation) Weighting of Assessment : 70% INDIVIDUAL MARK Learning outcomes assessed by Assessment: 1, 2, 3 and 4 – See Module Listings of Learning

Read More »

Tourism Trends and Investment Decisions: A Comparative Study

Assignment TaskYou are a strategist working for a major hospitality group based in Australia. The company is planninginternational expansion, and the board has asked you to compile a report to identify the most suitablelocation for the project. The board has shortlisted two international locations (which will be allocatedto you by

Read More »

EC502 Language and Literacy in the Early Years

EC502 Language and Literacy in the Early Years Unit Code/Description EC502 Language and Literacy in the Early Years Course/Subject Bachelor of Early Childhood Education Semester March 2025 Assessment Overview   Unit Learning Outcomes Addressed 1, 2, 3 Assessment Objective Assessment 1: Poster Including an Invigilated stage in Week 3. Due

Read More »

EC501 Early Childhood Learning and Development

Unit Code/Description EC501 Early Childhood Learning and Development Course/Subject Graduate Diploma in Education (early childhood) Semester S 1, 2025 Assessment Overview   Unit Learning Outcomes Addressed 1, 2, 3 Assessment Objective In this assessment, student are required to select one of the case studies provided and critically analyze the child’s

Read More »

JSB172: Professional Academic Skills

JSB172: Professional Academic SkillsAssessment: Workplace Report and Presentation Weight: 50%Due date: Friday 30th May 11:59pm Length: 1,750 words (+/- 10 %) / 5minutesPurpose/Learning Objectives:This assessment relates to Learning Outcomes 1, 2, 3, and 4: Task:Your task is to write a Workplace Report identifying how to address the topic/issue chosen or

Read More »

2015PSY Developmental Psychology Assignment

2015PSY Developmental Psychology Assignment 2025 2015PSY Developmental Psychology Assignment Assignment MaterialsAssignment Information Sheet & Marking Criteria.pdf (this document)Assignment Template.docx (template)Example Assignment.pdf (HD exemplar)Due Date: Friday 16 May, 11:59PM (Week 10)Weighting: Marked out of 100 (worth 30% of course grade)Word Count: 1,500 words maximum(inclusive of main text, headings, in-text citations; excluding

Read More »

Principles of Economics Federal Budget

Principles of Economics Short-answer Assignment V1 (20% of final mark) The assignment consists of four questions.  You should allocate at least half a page (or 250 words) to each answer or 1000 words for all four answers depending on the nature of and/or marks allocated for the question/s. You may

Read More »

LML6003 – AUSTRALIA’S VISA SYSTEM 1 (FAMILY AND OTHERVISAS)

Graduate Diploma in Migration Law LML6003 – AUSTRALIA’S VISA SYSTEM 1 (FAMILY AND OTHER VISAS) Assessment Task 2 – Semester 1, 2025 LML6003 – AUSTRALIA’S VISA SYSTEM 1 (FAMILY AND OTHERVISAS) Instructions: 1. Students must answer all questions as indicated. Make certain all answers are clearly labelled. 2. Make certain

Read More »

Construction Cadetships in the Australian Construction Industry

REPORT TOPICPrepare an Academic Report on the following:‘Construction Cadetships in the Australian Construction Industry’.The report should encompass the following: Your personal evaluation and critique of the key findings in your report including your evaluation of construction cadetships, yourfindings in relation to potential issues/problems with cadetships and your recommendations to improve

Read More »

Assessing Corporate Governance and its Significance

Assessing Corporate Governance and its Significance: A Case Study Analysis Overview: Accounting irregularities have cost investors millions of dollars and, most importantly, adversely impacted their confidence in the financial system. While there have been remarkable improvements in regulatory supervision, auditing framework and reporting transparency, young graduates must assess major corporate

Read More »

Master of Professional Accounting and Accounting Advanced

Assessment 2 – Business Case (CVP) AnalysisUnit Code/Description ACC901 Accounting for Managerial DecisionsCourse/Subject Master of Professional Accounting and Master of Professional Accounting AdvancedSemester S1 2025 Assessment Overview Unit Learning OutcomesAddressed1,2,3,4 and 5Assessment Objective The primary objective of this assessment is to assess the students’ ability to apply CVPanalysis and relevant

Read More »

Urban Design Theory Essay writing

Essays are a major form of assessment at university. Through essays, you develop your understanding of discipline-specific content, strengthen your critical thinking, and develop your ability to translate that thinking into a persuasive written form. This assignment assesses your understanding of the following Unit Learning Outcomes: 1) understand the historic

Read More »

Statutory Interpretation of Disability Discrimination in NSW Law

Foundations of Law 70102 – Assessment Task 3 – Autumn 2025Statutory Interpretation and Research ExerciseDue: Thursday 22 May 2025 by 23.59Length: 2000 words (excluding the headings Part A, Part B and Part C, footnotes andbibliography. Any additional headings that you decide to use will be included in the wordcount)Weighting: 40%Task

Read More »

Can't Find Your Assignment?