Question about the Operating Systems Project
Assignment ID Number AFFGEHU83939HD Type of Document Essay Writing Format APA/MLA/Harvard Academic Level Masters/University References/Sources 4 References
Question about the Operating Systems Project
You will create a program that will allow many chat bots to run simultaneously but asynchronously in their own threads. Each bot is responsible for writing the provided text message to a single, shared resource called QUOTE.txt. The bots must utilize an appropriate IPC mechanism/algorithm to avoid the data from being corrupted by other bots.
You’ll accomplish this by creating a project that manages many threads writing to a shared file (you’re not creating a chat server; the chat bots will all write to the same file).
Unless the instructor gives permission, you must work in pairs (teams of two).
When your software begins, it will perform the following tasks:
In the current directory, create a file called QUOTE.txt (cwd).
Have your process up and running. Its pid (Process ID) should be written into the file, followed by a carriage return and a newline.
QUOTE.txt should be closed.
Create a FLAG semaphore for the threads to use to control access to the file QUOTE.txt.
Make seven threads. Use the POSIX thread creation function (pthread create()).
Allow all seven threads to finish their work before blocking/waiting.
Destroy the semaphore when all threads are finished, then exit gracefully by writing a friendly message to the console.
Each thread must complete the following tasks (notice that each thread is active at the same time):
The semaphore FLAG is periodically received (even numbered threads once every two seconds, odd numbered threads once every three seconds); once the thread obtains FLAG, it will do the following:
Write the thread’s tid (thread id) followed by “The Quote” in the file QUOTE.txt (followed by a Carriage Return and Newline)
To the console, type (print to stdout) The phrase “thread is running” is followed by a newline.
QUOTE.txt should be closed.
FLAG, the semaphore, should be released.
Rep the process seven times more (they run a total of 8 times).
For constructing and managing semaphores, you’ll need to use the POSIX system functions sem init(), sem wait(), sem post(), and sem destroy ().
I’ll compile and run your software on Edoras to see how it works. Your program must be written in such a way that it compiles and runs without errors using the gcc or g++ compilers. In your home directory, create a subdirectory called “a1.” It should contain your source files, header files, a Makefile (see Canvas for Makefile examples), and a README file (see Canvas for README requirements). Your source files MUST CONTAIN ENOUGH COMMENTS TO MAKE THEM EASILY READABLE. For sources that are badly (or not at all) commented, points will be deducted. The executable should be called “bots.”
By hand, make /a1.
Make source files, an include file, a Makefile, and a README file for your project. Place them in /a1.
In this directory, the Makefile will produce an executable named “bots” (/a1).
[https://computing.llnl.gov/tutorials/pthreads/] provides a good overview of threads.
It is not permitted to use the system call “system().”
On Monday, June 14, 2021, at 1700 (5:00 PM), the assignment is due.
SUBMISSION OF YOUR WORK:
Your project files should be uploaded to Assignment #1 on Canvas, in one of the team members’ class account. Make certain to write each one down.
Ensure that all of your files (all source files, Makefile, README file, test files, and so on) are located in the a1 subdirectory of one of your class accounts.
Create a single zip file or a tarball (tar file) with all project files before loading them onto Canvas. Then, in Assignment #1, attach the file (submit it) under Assignment Submission (only one team member turns in the assignment on Canvas). Attach the README file after that. Before submitting your project, specify both team members’ names and class accounts, as well as which account will be used for testing, and then submit your project.
Even-numbered threads: Computer programming is all about controlling complexity.
Brian Kernigan’s quote
Threads with odd numbers: Computer science isn’t about computers any more than astronomy is about telescopes.
Please follow the aforementioned instructions… Don’t worry, Edoras will be submitting it from my end.
TBD |.doc file | C++ Requirements
QUALITY OF RESPONSE NO RESPONSE POOR / UNSATISFACTORY SATISFACTORY GOOD EXCELLENT Content (worth a maximum of 50% of the total points) Zero points: Student failed to submit the final paper. 20 points out of 50: The essay illustrates poor understanding of the relevant material by failing to address or incorrectly addressing the relevant content; failing to identify or inaccurately explaining/defining key concepts/ideas; ignoring or incorrectly explaining key points/claims and the reasoning behind them; and/or incorrectly or inappropriately using terminology; and elements of the response are lacking. 30 points out of 50: The essay illustrates a rudimentary understanding of the relevant material by mentioning but not full explaining the relevant content; identifying some of the key concepts/ideas though failing to fully or accurately explain many of them; using terminology, though sometimes inaccurately or inappropriately; and/or incorporating some key claims/points but failing to explain the reasoning behind them or doing so inaccurately. Elements of the required response may also be lacking. 40 points out of 50: The essay illustrates solid understanding of the relevant material by correctly addressing most of the relevant content; identifying and explaining most of the key concepts/ideas; using correct terminology; explaining the reasoning behind most of the key points/claims; and/or where necessary or useful, substantiating some points with accurate examples. The answer is complete. 50 points: The essay illustrates exemplary understanding of the relevant material by thoroughly and correctly addressing the relevant content; identifying and explaining all of the key concepts/ideas; using correct terminology explaining the reasoning behind key points/claims and substantiating, as necessary/useful, points with several accurate and illuminating examples. No aspects of the required answer are missing. Use of Sources (worth a maximum of 20% of the total points). Zero points: Student failed to include citations and/or references. Or the student failed to submit a final paper. 5 out 20 points: Sources are seldom cited to support statements and/or format of citations are not recognizable as APA 6th Edition format. There are major errors in the formation of the references and citations. And/or there is a major reliance on highly questionable. The Student fails to provide an adequate synthesis of research collected for the paper. 10 out 20 points: References to scholarly sources are occasionally given; many statements seem unsubstantiated. Frequent errors in APA 6th Edition format, leaving the reader confused about the source of the information. There are significant errors of the formation in the references and citations. And/or there is a significant use of highly questionable sources. 15 out 20 points: Credible Scholarly sources are used effectively support claims and are, for the most part, clear and fairly represented. APA 6th Edition is used with only a few minor errors. There are minor errors in reference and/or citations. And/or there is some use of questionable sources. 20 points: Credible scholarly sources are used to give compelling evidence to support claims and are clearly and fairly represented. APA 6th Edition format is used accurately and consistently. The student uses above the maximum required references in the development of the assignment. Grammar (worth maximum of 20% of total points) Zero points: Student failed to submit the final paper. 5 points out of 20: The paper does not communicate ideas/points clearly due to inappropriate use of terminology and vague language; thoughts and sentences are disjointed or incomprehensible; organization lacking; and/or numerous grammatical, spelling/punctuation errors 10 points out 20: The paper is often unclear and difficult to follow due to some inappropriate terminology and/or vague language; ideas may be fragmented, wandering and/or repetitive; poor organization; and/or some grammatical, spelling, punctuation errors 15 points out of 20: The paper is mostly clear as a result of appropriate use of terminology and minimal vagueness; no tangents and no repetition; fairly good organization; almost perfect grammar, spelling, punctuation, and word usage. 20 points: The paper is clear, concise, and a pleasure to read as a result of appropriate and precise use of terminology; total coherence of thoughts and presentation and logical organization; and the essay is error free. Structure of the Paper (worth 10% of total points) Zero points: Student failed to submit the final paper. 3 points out of 10: Student needs to develop better formatting skills. The paper omits significant structural elements required for and APA 6th edition paper. Formatting of the paper has major flaws. The paper does not conform to APA 6th edition requirements whatsoever. 5 points out of 10: Appearance of final paper demonstrates the student’s limited ability to format the paper. There are significant errors in formatting and/or the total omission of major components of an APA 6th edition paper. They can include the omission of the cover page, abstract, and page numbers. Additionally the page has major formatting issues with spacing or paragraph formation. Font size might not conform to size requirements. The student also significantly writes too large or too short of and paper 7 points out of 10: Research paper presents an above-average use of formatting skills. The paper has slight errors within the paper. This can include small errors or omissions with the cover page, abstract, page number, and headers. There could be also slight formatting issues with the document spacing or the font Additionally the paper might slightly exceed or undershoot the specific number of required written pages for the assignment. 10 points: Student provides a high-caliber, formatted paper. This includes an APA 6th edition cover page, abstract, page number, headers and is double spaced in 12’ Times Roman Font. Additionally, the paper conforms to the specific number of required written pages and neither goes over or under the specified length of the paper.
GET THIS PROJECT NOW BY CLICKING ON THIS LINK TO PLACE THE ORDER
Do You Have Any Other Essay/Assignment/Class Project/Homework Related to this? Click Here Now [CLICK ME] and Have It Done by Our PhD Qualified Writers!!
Tired of getting an average grade in all your school assignments, projects, essays, and homework? Try us today for all your academic schoolwork needs. We are among the most trusted and recognized professional writing services in the market.
We provide unique, original and plagiarism-free high quality academic, homework, assignments and essay submissions for all our clients. At our company, we capitalize on producing A+ Grades for all our clients and also ensure that you have smooth academic progress in all your school term and semesters.
High-quality academic submissions, A 100% plagiarism-free submission, Meet even the most urgent deadlines, Provide our services to you at the most competitive rates in the market, Give you free revisions until you meet your desired grades and Provide you with 24/7 customer support service via calls or live chats.