Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
expand_more
expand_more
format_list_bulleted
Question
thumb_up100%
Can someone help me with this? ASAP??!! Background:
The Linux operating system consists of the Kernel some other minor components and then a large number of Device Drivers. Device drivers are the key to how various hardware devices interface with the computer.
Task:
Develop a device driver that can be loaded and run in Linux. Then add some functionality to the device driver such as the user/application passing in a string to the device driver and the device driver returns an encrypted version of the string or passes in the excrypted string and returns the original string. Include a document on how to build, load and interact with the device driver along with screen shots of output.
Requirements: It must be written in C. It must be a valid an loadable device driver with at least some user/application functionality. That includes an open, release, read, write, and at least one ioctl command. It must also be able to be unloaded, and indicate that it has unloaded from the system. Make use of the printk and copy_to_user functions. The read and write functions should follow the concept of linux files and be relevent to reading or writing.
Part of the grading of the driver will be based on the functionality you choose to implement. It can not be trivial functionality.
This must be run in the linux virtual machine.
You must also write a user application that utilizes your device driver.
There are TWO directories in your GitHub: The first is Module that has your kernel module. The second is Test that will have your test user application.
The writeup should have a detailed description of what your device driver does and clear instructions on how to build your kernel module and your test program and how to install the kernel module and how to use your test program.
Example: Encrypt data, read and write a string, use ioctl to determine to encrypt or decrypt and to set an key. If ioctl set to encrypt, write a string, then read back the encrypted data. Switch ioctl to decrypt then write the encrypted string and read back the original message (decrypted).
NOTE: No basic calculator or palindrome allowed!
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution
Trending nowThis is a popular solution!
Step by stepSolved in 3 steps
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- Briefly describe the command queue.arrow_forwardInstructions In this exercise, you will write a program that prompts the user for a numeric value and then calculate the square root of this number. You will display the result. The main tasks for this exercise are as follows: 1. Create a new Universal Windows Project. 2. Create the user interface. The user interface should include a TextBox, Button, and two Label controls on the main window. Place them anywhere in the window. 3. Calculate square roots, do not use Math.Sqrt or any square root method (or any math library) if you want full credit. There will be a 50% grading penalty for using Math.Sqrt. There are multiple sources on the internet showing how to calculate a square root. One can be found here: https://blogs.sas.com/content/iml/2016/05/16/babylonian-square-roots.html If you have difficulty completing the assignment you may resort to using Math.Sqrt method or another Math method of the .NET Framework with a reduction of 50 percent on the assignment. 5. Test the application…arrow_forwardBriefly describe the command queue.arrow_forward
- An iOS app can be in one of five states: - The app has not been launched or was running but was terminated by the system. - The app is running in the foreground but is currently not receiving events. An app usually stays in this state only briefly as it transitions to a different state. - The app is running in the foreground and is receiving events. This is the normal mode for foreground apps. The app is in the background and executing code. Most apps enter this state briefly on their way to being suspended. However, an app that requests extra execution time may remain in this state for a period of time. (An app being launched directly into the background enters this state instead of the inactive state.) - The app is in the background but is not executing code. The system moves apps to this state automatically and does not notify them before doing so. While suspended, an app remains in memory but does not execute any code. When a low-memory condition occurs, the system may purge…arrow_forwardWhat determines the order of events in a text-based system, such as a command line?arrow_forwardlanguage is C++ Use Lastname First name, JonnyEnglish Instructions 1. Using Visual Studio, or Xcode, create a new empty project in your working drive. Name the Project: 05LastFirst (NOTE: where LastFirst is your actual Lastname and Firstname. For Example, if your name is Mary Smith then your empty project folder will be named 02SmithMary) 2. You will be updating your 05CH3 program. You will develop an Algorithm and then update your C++ Program for the problem described below: Have the user input test grades UNTIL user enters a negative number. The program will: list the number of grades entered, list the number of passing grades (>= 60) total all the grades, and then display the average of the grades. For example: Enter score 1: 88.8 Enter score 2: 50 Enter score 3: 100 Enter score 4: 100 Enter score 5: -1 Total number of grades: 4 Total number of passing grades: 3 Total: 338.8 Average: 84.7 (NOTE: Follow the steps below in creating your Algorithm and C++ Program.…arrow_forward
- Explain the concept of "Safe Mode" in Windows and the circumstances in which you might use it.arrow_forwardA user installs an application on a PC, then later deletes it and claims he never installed it. Describe three ways you may be able to prove that the application was installed.arrow_forwardStreams are what they're called in the C programming language.arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
- 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
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education