Implement a version of the standard I/O fgets function, called tfgets, that times out and returns NULL if it does not receive an input line on standard input within 5 seconds. Your function should be implemented in a package called tfgets-proc.c using processes, signals, and nonlocal jumps. It should not use the Linux alarm function. Test your solution using the driver program in Figure 12.47.
________________________________________________________code/conc/tfgets-main.c
________________________________________________________code/conc/tfgets-main.c
Figure 12.47 Driver program for Problems 12.31-12.33.
Want to see the full answer?
Check out a sample textbook solutionChapter 12 Solutions
Computer Systems: A Programmer's Perspective (3rd Edition)
Additional Engineering Textbook Solutions
C Programming Language
Introduction To Programming Using Visual Basic (11th Edition)
Starting Out with C++: Early Objects
Starting Out With Visual Basic (8th Edition)
Differential Equations: Computing and Modeling (5th Edition), Edwards, Penney & Calvis
- The Ministry of Vybsie_Culcha intends to implement a grant for singers in order to offset difficulties experienced in the pandemic. The grant is to be funded from a fixed pool of funds (so the first set of singers that exhaust the funds are the only ones that are able to receive the grant). You are contracted to write a program that models the expected payouts. In order to reduce the possibility of fraud however, the ministry has decided to implement a (controversial) strategy that requires entertainers to prove they are the song owners by recording it at a Studio, even if already released. The Ministry maintains a list of Studios, and code for the Ministry and Studio classes have already been fully implemented. The starting code also includes calls to a template of a Singer class that interacts with a Song class. Your task is to execute eight(8) tasks that complete the Singer and Song classes. The HackerRank link to this exercise is at https://www.hackerrank.com/comp1161-lab2-23…arrow_forwardComputer Science Extend your shell with pipelining (mandatory for teams of 3 or 4) The command $ cmd1 | cmd2 | cmd3 connects the standard output of cmd1 to the standard input of cmd2, and again connects the standard output of cmd2 to the standard input of cmd3 using the pipeline operator '|'. You will need to use the pipe() system call. Your shell should be able to handle up to three commands chained together with the pipeline operator (i.e., your shell should support up to two pipes pipelined together). This portion of the project should only require implementing support for a pipeline of 2 pipes/3 commands (no working with redirection). Your shell does not need to handle built-in commands implemented above (i.e., cd, exit, path, and myhistory) in pipeline. I need the code for this please.arrow_forwardJava Proram ASAP Please look closely at the circled parts in the failed test case. It says 1 out of 4 passed. Improve and adjust the program which is down below with the futher moddifications because it does not pass the test cases in Hypergrade. Please remove /n from the program and for test case 4 after this line: Please re-enter the file name or type QUIT to exit:\n quitENTER there needs to be nothing. Also, I do not need file quit is no found in the program. import java.io.*;import java.util.Scanner;public class ConvertText { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); System.out.println("Please enter the file name or type QUIT to exit:"); while (true) { String input = sc.next(); if (input.toUpperCase().compareTo("QUIT") == 0) { break; } else { // Get the absolute path of the current directory String filePath = new…arrow_forward
- Stuck on this assignmentMake sure for it to run on gcc & ./ On C - Linux [Note, does not work on C99]Make sure to follow the assignment [add breaks] and include all others.Code it as welcoming the user first, make a discription that follows the example, and the number of degrees for the increment.Does the code need doubles? make the sure title Trigonometric table is centered! and follow the example "30" to display the exact chart.arrow_forwardUse the Bash shell for the completion of this project. Develop a shell scripting application that allows the user to perform some advanced mathematical operations. Your application should allow the user to perform these tasks: Task 2: Find the term of any linear sequence given by the rule Term = a * n + b, where a and b are integers specified by the user and n is a positive integer and print them in order (for example if the user inputs a=3, b=-4, the first few terms that should be printed are -1, 2, 5, 8, 11…). The user also will specify how many terms the program should print. In addition, the program should print the sum of terms found and a count of how many odd terms were found.arrow_forwardWrite a program that will sequentially list numbers from 0 to 50, changing its color depending on the size of the number, for example, for numbers from 0 to 10 it will be green, 11 to 22 red and 23 to 35 blue, etc. Limit the screen output speed to about 1 character / second. In order to change colors, you must first use the GetStdHandle function to get a handle to the console, which is similar to getting a file pointer before working with a file. It is done e.g. as follows: HANDLE hConsole; hConsole = GetStdHandle (STD_OUTPUT_HANDLE); The above functions are defined in windows.h Tip 2: Write a utility to find out the colors corresponding to all combinations from 0 to 255. Tip 3: Instructions and sample program for working with time. C language plz with explanation of codes. thanksarrow_forward
- Implementing an arithmetic server using socketsWrite a program with two parts: 1) a client, and 2) an arithmetic server. The job of the client is toaccept input from the keyboard and translate strings that you type into requests to the arithmeticserver. In other words, the client should translate strings such as "3 + 4" into a request to thearithmetic server. There are two versions of this program you have to implement:1. The client and server communicate using UDP.2. The client and server communicate using TCP.You have to submit the following: (a) the client program (b) the server program (c) output showing your program works correctly (you can run both the client and the server on the same computer for generating this output)arrow_forwardWrite in C: The default operation of xv6 console driver is to collect user keypresses into a line of text and toawaken the processes waiting for user input only when the user presses Enter. In addition, xv6console automatically echoes (i.e. prints out on the display) every user keypress. While thisbehaviour is appropriate in many scenarios, it is not suitable for interactive gaming.Implement ioctl() system call for the console driver that switches it into non-echoingm non-blockingmode and test it using sample game supplied to you in user/game.c file console.c // // Console input and output, to the uart. // Reads are line at a time. // Implements special input characters: // newline -- end of line // control-h -- backspace // control-u -- kill line // control-d -- end of file // control-p -- print process list // #include <stdarg.h> #include "types.h" #include "param.h" #include "spinlock.h" #include "sleeplock.h" #include "fs.h" #include "file.h" #include "memlayout.h"…arrow_forwardWrite the C or C++ program system2 that reads, when being executed, OS commands via the "command line parameter" C/C++ feature, and then executes them. The command line parameters must be legal Unix/Linux commands. Print the number of commands entered. To prepare, read about argc, argv, and envp. Focus is only argc and argv. A sample execution by fictitious user "mike" is: herb$ ./a.out pwd ls whoami argc 4 pwd argv[1] Executing command /Users/mikey 'pwd' = ls argv[2] Executing command 'ls' Applications Contacts Music Pictures familie herb Downloads testl Favorites Library Movies testl.c pix_low_2020 test2 test2.c Desktop Public Documents a.out test.c argv[3] = whoami Executing command mikey 'whoami'arrow_forward
- The dirname utility treats its argument as a pathname and writes to standard output the path prefix—that is, everything up to but not including the last component: $ dirname a/b/c/d a/b/c If you give dirname a simple filename (no / characters) as an argument, dir-name writes a . to standard output: $ dirname simple . Implement dirname as a bash function. Make sure it behaves sensibly when given such arguments as /.arrow_forwardThis is a MASM Project Assembly Code for x86 Processors ! The code below is supposed to copy whatever's in the source variable into the target variable. However, there is a single error, which will cause it to work correctly if fixed. What is it? .datasource WORD 10 DUP("AO")target WORD 10 DUP(?).codemov esi, OFFSET sourceadd esi, 18mov edi, OFFSET targetadd edi, 18mov ecx, LENGTHOF targetstdrepe movsw Group of answer choices: A: 18 should not be added to the ESI and EDI registers B: ECX should be set to the length of the source, not the target C: The direction flag should be cleared with CLD, not set with STD D: The REPE prefix should be replaced with REParrow_forwardWrite a program that receives a coded message file(Lab3ExtraCreditCT.txt) from your local espionage agent and decodes it into a file using standard English. The problem is your agent forgot to tell you the key used to decode the message. Fortunately, this is a simple substitution code consistently using 1 alphanumeric character to represent another, this is case sensitive. All other characters are not substituted, so a space will always be a space, a – will always be a –, a @ will always be a @, etcetera. You may use the following table to help you, it contains the most common letters used in the English language in descending order. E A R I O T N S L C U D P M H G B F Y W K V X Z J Q 0 5 3 2 4 6 8 1 9 7 Using the following key to convert plaintext to coded text: Plaintext = Now is the time for all good men to come to the aid of their country. Key = THEQUICKBROWNFXJMPSVLAZYDG The file your program outputs should look like this: Coded Text = Fxz bs vku vbnu ixp tww…arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education