Lab – Linux Fundamentals Instructions: Using Kali Linux, the Windows Linux Sub-System, or another Debian based Linux distribution, perform the following tasks based on the Linux Fundamentals lecture. For this lab, take screenshots for all major steps completed to illustrate that each task was successfully completed (the same method as would be used for other labs).
9. Display your current directory in the terminal
10. Display your current directories contents including the inode value and permissions for each file and directory
11. Without using an editor, create a file with no contents called billy_bobs_diary.txt in the user BillyBob’s home directory
12. Edit your file using nano or vi and add the following string into the contents of the file: “This is my super-duper secret diary. No one shall read my diary for as long as I live. I will encrypt this with the moistest strongest encryption that is known to man. P.S. I really love kitten memes”
13. Rename the file to secret_file.txt using the command line
14. Move the file, secret_file.txt, to a directory named secret located in /opt
15. Create a copy of the file, secret_file.txt, and place it in BillyBob’s home directory
16. On the file, secret_file.txt, located in /opt/secret, change the file permissions so that all users have read/write access, but not execute
17. After you get weirded out that your professor just did that for fun, change the permissions so that the owning user has r/w, the owning group has r/w, and all other users have read only access
18. Display the contents of secret_file.txt via the command line without using a text editor
19. Append the following line to the document without using a text editor: “I have hidden this file so cleverly, that no one will ever find it. My secrets are safe here.”
20. Using the command line, clone the GitHub repository below into the /opt directory. Use the ReadMe to introduce yourself to the mystery scenario. After familiar with the scenario and the instructions, solve the mystery and take snapshots along the way, especially when you figure out who done it! GitHub Repository: https://github.com/veltman/clmystery
In: Computer Science
1. Obtain the following string: abcdefghijklmnopqrstuvwxyz (as input or using initialization)
2. Using recursion, write a reverse function that reverses the characters in a string or character array given two indices (starting and ending). The string or the character array should reflect the reversal.
3. Read indices as input 11,18 (i.e. letters 12,19)
4. Call the reverse function to reverse letters: 12-19
5. Read indices as input 4,22 (i.e. letters 5,23)
6. Call the reverse function to reverse letters: 5,23
7. Using the reverse function, reverse the alphabet 8. Print the reversed string or character array.
Your output should contain:
abcdefghijksrqponmltuvwxyz
abcdwvutsrqponmlkjihgfexyz
zyxwvutsrqponmlkjihgfedcba
NOTE: your recursive function should modify the original string passed in as an argument, NOT make additional copies of the original string
In: Computer Science
Assume a 32-bit system, with a 2-level page table, with a page size of 4KiB (p1=10bits, p2=10bits, offset=12bits).
(i) A program on this system requires 16MiB in total: the program text segment uses 4MiB, the program data requires 2MiB, the program dynamically allocates 8MiB on the heap, and the stack utilises 2MiB. How many page-table pages are required for this process? (Don’t answer with just a number, explain your reasoning. Without your reasoning we cannot award part marks if your answer is incorrect.)
(ii) Describe the lookup steps within the page tables to find the physical address of the logical address 0x00403004.
(iii) If the reference time to access the physical memory frame
is 20 nanoseconds. Assume that all required pages are in memory.
How long does a paged memory reference take, if—
i. There is no TLB?
ii. There is a TLB, with an access speed of 0.05 nanoseconds, but
the TLB does not contain information on the required page?
iii. There is a TLB, with an access speed of 0.05 nanoseconds, and
the TLB contains information on this page?
Do not answer with just a number, explain your reasoning.
In: Computer Science
Write a C# program using repl.it that asks the user for three integers and prints the average value as a double. Example calculation (3 + 6 + 7) / 3 = 5.33333333333333 Given the data above, the output should be similar to: The average for the values entered is: 5.33333333333333 As always comments in your code are expected (what why how etc… ) Submit your repl.it link to the assignment dropbox text submission area.
In: Computer Science
Must be using Java Eclipse Please
4. Test program LinkedList.java, and make sure that you
understand each operation in the
program. (refer to linkedListApplication.java)
6. (Programming) Use LinkedList as a reference, add the
following operations in the class
LinkedList;
a) Find the average data values of the linked list.
b) Find the node with largest key, and then delete the node. (Note,
you must return
the node, not just the largest key)
c) Test ALL operations (Search, Insert, Delete, Append/Remove
to/from the header)
in the Main method. (Also display the average of the data values of
the linked list,
the largest key, the linked list before and after deleting the node
with the largest
key;
7. (Programming) Modify LinkedList.java programs so that it
handles employee objects.
Make your program menu-driven.
a) Find the average salary of the employees in the linked
list.
b) Find the employee with largest ID, and then delete the node.
(Note, you must return
the employee, not just the largest key, and delete it)
c) Test ALL operations (Search, Insert, Delete, Append/Remove
to/from the header) in
the Main method. (Also display the average salary, the employee
with largest ID, the
linked list before and after deleting the employee with the largest
key;
LinkedList.java
import java.util.*;
public class LinkedList
{
public Node header;
public LinkedList()
{
header = null;
}
public final Node Search(int key)
{
Node current = header;
while (current != null &&
current.item != key)
{
current =
current.link;
}
return current;
}
public final void Append(int newItem)
{
Node newNode = new
Node(newItem);
newNode.link = header;
header = newNode;
}
public final Node Remove()
{
Node x = header;
if (header != null)
{
header =
header.link;
}
return x;
}
public final Node searchPrevious(int key)
{
if (header == null)
{
return
header;
}
else
{
Node current =
header;
while
(!(current.link == null) && (current.link.item !=
key))
{
current = current.link;
}
return
current;
}
}
public final void Insert(int newItem, int
preKey)
{
Node current;
Node newNode = new
Node(newItem);
current = Search(preKey);
if (current == null)
{
System.out.println("there is no such preKey!");
}
else
{
newNode.link =
current.link;
current.link =
newNode;
}
}
public final void Delete(int key)
{
if (header == null) // The list is
empty!
{
System.out.println("The list is empty!");
}
else
{
if (header.item
== key) // header to be deleted.
{
header = header.link;
}
else
{
Node p = searchPrevious(key);
if (p.link == null)
{
System.out.println("There is
no such item!");
}
else
{
p.link = p.link.link;
}
}
}
}
public final void ShowLinkedList()
{
if (header == null)
System.out.println("The list is empty!");
else
{
Node current = header;
System.out.printf("%1$s->", current.item);
while (!(current.link == null))
{
current = current.link;
System.out.printf("%1$s->", current.item);
}
System.out.printf("null");
System.out.println();
}
}
public final void PrintList()
{
if (header == null)
{
System.out.println("The list is empty!");
}
else
{
Node current =
header;
System.out.println(current.item);
while
(!(current.link == null))
{
current = current.link;
System.out.println(current.item);
}
}
}
}
In: Computer Science
In this programming assignment, you need to create 3 files.
1. DateType.h
2. DateType.cpp
3. A test driver for testing the class defined in the other 2 files. You can name your file in the way you like. Remember it must be a .cpp file.
In DateType.h file, type these lines:
// To declare a class for the Date ADT // This is the header file DateType.h
class DateType
{
public:
void Initialize(int newMonth, int newDay, int newYear); int
GetYear() const;
int GetMonth() const;
int GetDay() const;
private:
int year;
int month;
int day; };
// Class implementation // DateType.cpp
#include "DateType.h"
void DateType::Initialize(int newMonth, int newDay, int newYear)
{
year = newYear;
month = newMonth;
day = newDay; }
int DateType::GetMonth() const
{
return month;
}
In DateType.cpp file, type these lines:
int DateType::GetDay() const
{
return day;
}
int DateType::GetYear() const
{
return year; }
In you test driver, type in these lines:
// test driver
// I give the file name: testDriver.cpp
// To compile, type c++ DataType.cpp testDriver.cpp, this will
generate an a.out executable.
// Or, type c++ Type.cpp testDriver.cpp –o testdriver, this will
generate an executable named testdriver.
#include "DateType.h" #include <iostream>
using namespace std;
int main()
{
DateType today;
DateType anotherDay; today.Initialize(9, 24, 2003); anotherDay.Initialize(9, 25, 2003);
cout << "Today is " << today.GetMonth() << "/" << today.GetDay() << "/" << today.GetYear() << endl;
cout << "Anotherday is " << anotherDay.GetMonth() << "/" << anotherDay.GetDay() << "/" << anotherDay.GetYear() << endl;
return 0; }
Once you have the 3 files ready, you can compile them. The compile command is in the comments of the test driver.
After the compilation, you run the program, and see what output
you get.
Now, modify the code to initialize 2 different dates, compile and
run it, and see what the output is.
In: Computer Science
Main task is solving problem, in this code there is problem. and you should explain?
#include <unistd.h>
#include <fcntl.h>
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char *argv[]){
int fd1, fd2;
char buffer[100]; long int n1;
if(((fd1 = open(argv[1], O_RDONLY)) == -1) || ((fd2 = open(argv[2],
O_CREAT|O_WRONLY|O_TRUNC,0700)) == -1)){
perror("file problem ");
exit(1);
}
while((n1=read(fd1, buffer, 512) > 0))
if(write(fd2, buffer, n1) != n1){
perror("writing problem "); exit(3);
}
// Case of an error exit from the loop
if(n1 == -1){
perror("Reading problem ");
exit(2);
}
close(fd2);
exit(0);
}
In: Computer Science
Please answer full question thoroughly (A- D) showing detailed work. SUBMIT ORIGINAL work and ensure it is correct for thumbs up.
a) Show that an n-element heap has height
b) Show that in any subtree of a max-heap, the root of the subtree contains the largest value occurring anywhere in that subtree.
c) Where in a max-heap might the smallest element reside, assuming that all elements are distinct?
d) Show that, with the array representation for storing an n-element heap, the leaves are the nodes indexed by
In: Computer Science
DROP TABLE registration;
DROP TABLE sections;
DROP TABLE courses;
DROP TABLE students;
DROP TABLE instructors;
CREATE TABLE courses (
cid varchar2(9) NOT NULL,
cname varchar2(50) NOT NULL,
credits number(1) DEFAULT 3,
prereq varchar2(9),
CONSTRAINT pk_courses PRIMARY KEY (cid)
);
INSERT INTO courses VALUES ('IS 201','Java
Programming',3,null);
INSERT INTO courses VALUES ('IS 202','C++ Programming',3,'IS
201');
INSERT INTO courses VALUES ('IS 301','Web Design',3,null);
INSERT INTO courses VALUES ('IS 331','Business
Applications',3,null);
INSERT INTO courses VALUES ('IS 401','Database Design',3,'IS
331');
INSERT INTO courses VALUES ('IS 413','SQL Programming',3,'IS
401');
CREATE TABLE students (
sid char(9) NOT NULL,
lname varchar(30) NOT NULL ,
fname varchar2(30) NOT NULL ,
gender char(1) NOT NULL ,
addr varchar2(50) NOT NULL ,
city varchar2(20) NOT NULL ,
state char(2) NOT NULL ,
zip varchar2(10) NOT NULL ,
phone varchar2(14) NULL ,
birthdate date NULL ,
tuitionRate number(7, 2) NOT NULL ,
creditsEarned number(3) NOT NULL ,
CONSTRAINT pk_students PRIMARY KEY (sid)
);
INSERT INTO students VALUES ('100000001','Lee','George','M','15
Merchant
Street','Honolulu','HI','96818','808-524-3333','01-MAY-1965',5000.00,47);
INSERT INTO students VALUES
('100000002','Yamamoto','Bill','M','3432 Birch
Street','Honolulu','HI','96814','808-522-2212','03-JUN-1958',5000.00,12);
INSERT INTO students VALUES ('100000003','Carver','Hillary','F','22
Aardvark
Avenue','Washington','DC','10101','800-212-3246','23-AUG-1991',5000.00,69);
INSERT INTO students VALUES ('100000004','King','Linda','F','341
Kaapahu
Road','Paauilo','HI','96776',NULL,'01-SEP-1998',4399.00,6);
INSERT INTO students VALUES
('100000005','Rollings','Willie','M','1221 Ala Moana
Blvd','Honolulu','HI','96814',NULL,NULL,4888.00,0);
INSERT INTO students VALUES
('100000006','Alexander','Wanda','F','93-123 Old Mill
Road','Honokaa','HI','96727','808-776-2313','02-OCT-1997',5000.00,99);
INSERT INTO students VALUES ('100000007','Carver','Bill','M','33
Richards
Street','Honolulu','HI','96813',NULL,'22-OCT-1990',5000.00,0);
INSERT INTO students VALUES ('100000008','DeLuz','Bob','M','102
Orleans Ave','San
Francisco','CA','97745','808-555-3324','01-MAR-1998',5000.00,14);
INSERT INTO students VALUES ('100000009','Lee','Lisa','F','45 Fong
Avenue','San
Francisco','CA','97767','808-333-3432','21-APR-1997',5000.00,26);
INSERT INTO students VALUES ('100000010','Garcia','Sherrie','F','2
S.
Beretania','Honolulu','HI','96817','808-663-4453','03-DEC-1997',5000.00,29);
INSERT INTO students VALUES ('100000011','Kamaka','Oscar','M','34
Kapolani
Blvd','Honolulu','HI','96813','808-533-3332','12-FEB-1998',5000.00,0);
CREATE TABLE instructors (
inId char(9) NOT NULL,
iLname varchar2(30) NOT NULL,
iFname varchar2(30) NOT NULL,
rank varchar2(10) NOT NULL,
office varchar2(10) NULL,
phone varchar2(20) NULL,
salary number(8,2) DEFAULT 0,
CONSTRAINT pk_instructors PRIMARY KEY (inID)
);
INSERT INTO instructors VALUES
('200000001','Souza','Edward','Lecturer','LM101','808-533-4241',5000.00);
INSERT INTO instructors VALUES
('200000002','Tenzer','Laurie','Associate','LM102','808-533-4244',5000.00);
INSERT INTO instructors VALUES
('200000003','Otake','Bill','Assistant','MR101','808-533-4247',5800.00);
CREATE TABLE sections (
crn char(4) NOT NULL,
cid varchar2(9) NOT NULL,
section char DEFAULT 'A',
inId char(9) NOT NULL,
days varchar2(10) DEFAULT 'TBA',
time varchar2(16) DEFAULT 'TBA',
room varchar2(10) NULL,
CONSTRAINT pk_sections PRIMARY KEY (crn),
CONSTRAINT fk_inid_sections FOREIGN KEY (inid) REFERENCES
instructors(inid),
CONSTRAINT fk_cid_sections FOREIGN KEY (cid) REFERENCES
courses(cid)
);
INSERT INTO sections VALUES ('1000','IS
201','A','200000003','MWF','08:00 - 08:50','CL100');
INSERT INTO sections VALUES ('1001','IS
201','B','200000003','MWF','09:00 - 09:50','CL100');
INSERT INTO sections VALUES ('1002','IS
201','C','200000001','TTh','08:00 - 09:15','CL102');
INSERT INTO sections VALUES ('1003','IS
301','A','200000002','TTh','09:30 - 10:45','CL340');
INSERT INTO sections VALUES ('1004','IS
301','B','200000002','MWF','09:00 - 09:50','CL340');
INSERT INTO sections VALUES ('1005','IS
413','A','200000001','MWF','09:00 - 09:50','CL230');
CREATE TABLE registration (
crn char(4) NOT NULL,
sid char(9) NOT NULL,
CONSTRAINT pk_registration PRIMARY KEY (crn,sid),
CONSTRAINT fk_crn_registration FOREIGN KEY (crn) references
sections(crn),
CONSTRAINT fk_sid_registration FOREIGN KEY (sid) references
students(sid)
);
INSERT INTO registration VALUES ('1000','100000001');
INSERT INTO registration VALUES ('1003','100000001');
INSERT INTO registration VALUES ('1005','100000001');
INSERT INTO registration VALUES ('1001','100000002');
INSERT INTO registration VALUES ('1004','100000002');
INSERT INTO registration VALUES ('1005','100000003');
INSERT INTO registration VALUES ('1002','100000004');
INSERT INTO registration VALUES ('1003','100000004');
INSERT INTO registration VALUES ('1005','100000004');
INSERT INTO registration VALUES ('1000','100000005');
INSERT INTO registration VALUES ('1003','100000005');
INSERT INTO registration VALUES ('1002','100000008');
INSERT INTO registration VALUES ('1004','100000008');
INSERT INTO registration VALUES ('1002','100000009');
INSERT INTO registration VALUES ('1005','100000009');
INSERT INTO registration VALUES ('1002','100000010');
INSERT INTO registration VALUES ('1005','100000010');
INSERT INTO registration VALUES ('1000','100000011');
INSERT INTO registration VALUES ('1003','100000011');
INSERT INTO registration VALUES ('1005','100000011');
commit;
In: Computer Science
Using Perl;
Part 1:
Allow the user to enter a full name in the “first last”
format
Print just the first name
Print just the last name
Print the name in “last, first” format
Print the entire name out in all capital letters
Use a single print statement to print out the first name on one
line and the last name on
the next line.
There should be 5 print statements generating 6 lines of
output.
Part 2:
Enter a three digit number (such as 316)
Print out the number from the hundreds place (for example, 3 in
316)
Print out the number from the ten’s place (for example, 1 in
316)
Print out the number from the one’s place (for example, 6 in
316)
Print out the original number
All output will be appropriately labeled and on a separate line,
such as “hundreds
place”, “tens place”, and so on.
ALL the numeric values MUST be right justified in the output using
formatted output
All work done for this part MUST treat the information as numeric
values – do not treat
the input as a string or as an array.
There should be 4 print statements generating 4 lines of
output.
In: Computer Science
You have to write a program that will read an array from a file and print if the numbers in the file are right truncatable primes. A right truncatable prime is a prime number, where if you truncate any numbers from the right, the resulting number is still prime. For example, 3797 is a truncatable prime number number because 3797, 379, 37, and 3 are all primes. Input-Output format: Your program will take the file name as input. The first line in the file provides the total number of values in the array. The subsequent lines will contain an integer value. For example a sample input file “file1.txt” is:
3
397
73
47
Your output will be a yes/no for each value in the input file.
$./first file1.txt
no
yes
no
In: Computer Science
Write a set of remote access policies to use computers at college?
In: Computer Science
Lumière: Supporting a Virtual Workspace on the Cloud
Q2: Which organizational factors led to successful cloud adoption at Lumière?
Please write at least 600 words. No plagiarism.
In: Computer Science
C++ code
Output Formatting.
Design and implement a complete C++ program that reads a customer record from the user such as the record has 4 fields (pieces of information) as shown below:
Account Number (integer)
Customer full name (string)
Customer email (string)
Account Balance (double)
The program is expected to print the record in the format shown below:
Account Number : 0000000
Name : full name
Email : customer email
Balance : 000000.00$
For example, if the user enters the following record
1201077
Jonathan I. Maletic
10,000.17
The program outputs:
Account Number : 1201077
Name : Jonathan I. Maletic
Email : [email protected]
Balance : 10,000.17$
In: Computer Science
C++ ONLY!
Implement the find function for the List class. It takes a string as an argument and returns an iterator to a matching node. If no matching node, it returns a null iterator.
#include <iostream>
#include <cstddef>
#include <string>
using Item = std::string;
class List {
private:
class ListNode {
public:
Item item;
ListNode * next;
ListNode(Item i, ListNode *n=nullptr) {
item = i;
next = n;
}
};
ListNode * head;
ListNode * tail;
public:
class iterator {
ListNode *node;
public:
iterator(ListNode *n = nullptr) {
node = n;
}
Item& getItem() { return node->item; }
void next() { node = node->next; }
bool end() { return node==nullptr; }
friend class List;
};
public:
List() {
// list is empty
head = nullptr;
tail = nullptr;
}
bool empty() {
return head==nullptr;
}
// Only declared, here, implemented
// in List.cpp
void append(Item a);
bool remove (Item ©);
void insertAfter(iterator, Item);
void removeAfter(iterator, Item&);
iterator begin() {
return iterator(head);
}
iterator find(Item);
};
void List::append(Item a) {
ListNode *node = new ListNode(a);
if ( head == nullptr ) {
// empty list
head = node;
tail = node;
} else {
tail->next = node;
tail = node;
}
}
bool List::remove(Item ©)
{
if (!empty()) {
copy = head->item;
ListNode *tmp = head->next;
delete head;
head = tmp;
if (head==nullptr)
tail = nullptr;
return true;
}
return false;
}
void List::insertAfter(iterator it, Item item)
{
if (it.node == nullptr)
{
// insert at head
ListNode *tmp = new ListNode(item,head);
// if list is empty, set tail to new node
if (tail==nullptr) {
tail = tmp;
}
// set head to new node
head = tmp;
}
else
{
ListNode *tmp = new
ListNode(item,it.node->next);
it.node->next = tmp;
// could be a new tail, if so update tail
if (tail==it.node) {
tail = tmp;
}
}
}
void List::removeAfter(iterator it, Item& item)
{
// emtpy list or at tail, just return
if (it.node == tail) return;
if (it.node == nullptr)
{
ListNode * tmp = head;
head = head->next;
delete tmp;
if (head==nullptr)
tail = nullptr;
}
else
{
ListNode *tmp = it.node->next;
it.node->next = tmp->next;
delete tmp;
// could be that it.node is the new nullptr
if (it.node->next == nullptr)
tail = it.node;
}
}
List::iterator List::find(Item item)
{
//YOUR CODE HERE
return iterator();
}
int main()
{
List l;
l.append("one");
l.append("two");
l.append("three");
l.append("four");
auto it = l.find("one");
if (!it.end())
std::cout << "Should be one: " << it.getItem() <<
std::endl;
else
std::cout << "Iterator should not have been null." <<
std::endl;
auto no_it = l.find("zero");
if (no_it.end())
std::cout << "As expected, zero not found." <<
std::endl;
else
std::cout << "Oops! should not have found zero." <<
std::endl;
return 0;
}
In: Computer Science