
Concept explainers
Write an ALP program for ARM Cortex M3/4 to perform the following
(1) SVC is to be called from an application task running at Thread unprivileged mode.
(2) Two parameters are passed to the handler via R1, R2.
(3) If the SVC number is last 3 digits of your Student ID (0 to 255) or last 2 digits of your Student ID (if last 3-digits of Student ID > 255), then the addition of the data in R1, R2 should be performed and after that return and resume application task.
(4) If the SVC number is not your Student ID (3 or 2 digits), then return and resume application task.
Give suitable screen shots of the KEIL IDE-in debug mode to demonstrate the desired outputs. Ensure that the screenshot captures system time & day.
Below Program can be used (basic skeleton)as below to perform the above conditions .
AREA RESET, CODE, READONLY
in DCD 0x20000100,0x8000005D, 0,0,0,0,0,0,0,0,0,SVC_handler+1,0,0,0,0,0,0,0,0,0,0,0
ENTRY
MAIN LDR R1,=0X20000200
MSR PSP,R1
MOV R0,#3
MSR CONTROL,R0
LDR R7,=SRC
LDR R1,[R7],#4
LDR R2,[R7]
LDR R8,=DST
SVC 0x20
STOP B STOP
SVC_handler push {lr}
;Write logic here
pop {pc}
SRC DCD 0X30 ,0X20
AREA RES ,DATA, READWRITE
DST DCD 0,0
END
Please explain code step by step to perform the above questions.

Step by stepSolved in 3 steps

- Can you make C++ code of a Multi-level queue (FCFS, Round Robin, and Priority) for a better understanding of the topic? The explanation of how to make it and the output must be in the image below thank you!arrow_forward6arrow_forwardWrite a multithreaded C++, Pthread program that outputs prime numbers <= N. This program should work as follows: the user will run the program and will enter a number N on the command line. The program will then create a separate thread that outputs all the prime numbers less than or equal to N specified in the command-line argument.arrow_forward
- Does it make sense for a virtual machine's threads to be compelled to use the same method space?arrow_forward2) As discussed in the class on the implementation of subprogram (call and re- turn). Which one of the statements is NOT correct? A. The Activation record format and size are dynamic B. The dynamic link points to the top of an instance of the activation record of the caller C. An activation record instance is dynamically created when a subprogram is called D. Activation record instances reside on the run-time stackarrow_forwardPlease help me with my AlgorithmDesign problem. From the following list of bus rapid transit system (one way): Name Route Vacation A->B->C->D Work 1 E->B->F->G->H Work 2 B->N->E Work 3 H->D->N The problem: ➢ Task: Design an algorithm (C/C++/Java/Phyton) to read the bus rapid transit system routes list and print the number of tickets we need to purchase if we want to visit all places minimal twice. The complexity of the algorithm must be O(V+E). V is the number of places. E-> is the number of transits. ➢ PS: Use Tarjan’s or Kosaraju’s strongly connected component algorithm. **In order for A to be visited twice, we must order 2 "Vacation" tickets (multiply by 2)arrow_forward
- Write a multi-process (using fork()) - C/C++ client/server program which uses message queues to transfer requests and results. - The client (child) process makes requests and prints results - The server (parent) process must then execute the proper function and return the results to the client. - Functions available: getdomainname,gethostname, and unamearrow_forwardyou are tasked with analyzing an algorithm which schedulea processes in a multiprogramming system. You are working with a computer that has two CPUs, each CPU having two threads (hyperthreading). You are studying a scenario with three processes: P0, P1, & P2., with run times of 5, 10, & 20 msecs, respectively. All 3 programs are 100% CPU bound, don't block, and always run in the CPU it's assigned to. How long will it take for these programs to complete execution. Show three different possible outcomes (and assigned process to processor, 3 different combinations and resulting total time for all three to complete)arrow_forwardPlease help me answer thisd for Operating Systemszarrow_forward
- Consider the following program: const int n=10; int s; //shared variable between two processes (threads) void P1( ) { int i=0; for (i=0;iarrow_forwardSelect the logic to implement a loop using the LOOPNZ instruction. ECX = ECX – 1 if ECX > 0 and ZF=0 , jump to destination O ECX = ECX + 1 if ECX > 0 and ZF=1, jump to destination EDX = EDX - 1 if EDX < 0 or ZF=0 , jump to destinationarrow_forwardWrite a C program that takes a list of command line arguments, each of which is the full path of a command (such as /bin/ls, /bin/ps, /bin/date, /bin/who, /bin/uname etc). Assume the number of such commands is N, your program would then create N direct child processes (ie, the parent of these child processes is the same original process), each of which executing one of the N commands. You should make sure that these N commands are executed concurrently, not sequentially one after the other. The parent process should be waiting for each child process to terminate. When a child process terminates, the parent process should print one line on the standard output stating that the relevant command has completed successfully or not successfully (such as "Command /bin/who has completed successfully", or "Command /bin/who has not completed successfully"). Once all of its child processes have terminated, the parent process should print "All done, bye-bye!" before it itself terminates. Note: do…arrow_forward
- Computer Networking: A Top-Down Approach (7th Edi...Computer EngineeringISBN:9780133594140Author:James Kurose, Keith RossPublisher:PEARSONComputer Organization and Design MIPS Edition, Fi...Computer EngineeringISBN:9780124077263Author:David A. Patterson, John L. HennessyPublisher:Elsevier ScienceNetwork+ Guide to Networks (MindTap Course List)Computer EngineeringISBN:9781337569330Author:Jill West, Tamara Dean, Jean AndrewsPublisher:Cengage Learning
- Concepts of Database ManagementComputer EngineeringISBN:9781337093422Author:Joy L. Starks, Philip J. Pratt, Mary Z. LastPublisher:Cengage LearningPrelude to ProgrammingComputer EngineeringISBN:9780133750423Author:VENIT, StewartPublisher:Pearson EducationSc Business Data Communications and Networking, T...Computer EngineeringISBN:9781119368830Author:FITZGERALDPublisher:WILEY





