Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

please code in python 1 Description The project will be implemented as three separate programs. There will be a logger responsible for logging all activity.

please code in python
image text in transcribed
image text in transcribed
1 Description The project will be implemented as three separate programs. There will be a logger responsible for logging all activity. There will be an encryption program responsible for encrypting and decrypting strings. There will be a driver program that will interact with the user to use the encryption program. The entire system will be ran by running the driver program, which will launch the other programs and communicate with them through pipes, If you use C/C++ to code your project you must use the linux system calls fork, pipe, and dup2. If use Java to code your project you must use the Process class. If you use Python use the Subprocess module. Examples for all these approaches will be provided in class. Details of each of the programs are below. 2.3 Driver Program The driver program should accept a single commandline argument - the name of the log file. Upon start, the driver program will create two new processes, executing the logger and the encryption program. Pipes should be used to connect to their standard input and standard ontput. Python and Java provide streams to communicate ower these pipes. C/C++ will need to use the read and write system calls to communicate. Once set up, the driver program should prompt the user for commands, looping until the quit command is received. Eech command should be logged, and the result of each command should also be logged. The start and exit of the driver program should be logged. All strings entered to be encrypted or decrypted should be saved in a history that hists only for this run. The driver program shotuld Operating Systems Concepts Page 2 CS/SE4348 Project 01 Spring 2023 password - Provide the user with the option of using a string in the history or entering a new string. If a new string will be used, prompt the user for a password, and then set it as the current password in the encryption program. If the history will be used, provide the user with a menu where a number can be used to select a string stored in the history. The entered password is not stored in the history. encrypt - Provide the user with the option of using a string in the history or entering a new string. If a new string will be used, prompt the user for a string, record it in the history, and send an encrypt command to the enicryption program. If the history will be used, provide the user with a menu where a number can be used to select a string stored in the history. The results should be printed to standard output and saved in the history. decrypt - Provide the user with the option of using a siring in the history or entering a new string. If a new string will be used, prompt the user for a string, record it in the history, and send an decrypt command to the encryption program. If the history will be used, provide the user with a menu where a number can be used to select a string stored in the history. The results should be printed to standard output and saved in the history. history Show the history. quit Send QUIT to the encryption program and logger, and then exit the program. In the above commands whenever the history is used, provide the user with a means to exit the history and enter a new string

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

d. How were you expected to contribute to family life?

Answered: 1 week ago