Consider a three-level page table to translate a 39-bit virtual address to a physical address as shown below.
The page size is 4 KB (1 KB = 210 bytes) and page table entry size at every level is 8 bytes. A process P is currently using 2 GB (1 GB = 230 bytes) virtual memory which is mapped to 2 GB of physical memory. The minimum amount of memory required for the page table of P across all levels is _______ KB.
Consider the following ANSI C function:
int SomeFunction (int x, int y)
{
if ( (x == 1) I I (y == 1)) return 1;
if (x == y) return x;
if (x > y) return SomeFunction(x - y, y);
if (y > x) return SomeFunction(x, y - x);
}
The value returned by SomeFunction(15, 255) is _______.
Consider the following ANSI C program:
#include <stdio.h>
#include <stdlib.h>
struct Node{
int value;
struct Node ⋆next;};
int main(){
struct Node ⋆boxE, ⋆head, ⋆boxN; int index = 0;
boxE = head = (struct Node ⋆) malloc (sizeof(struct Node));
head -> value = index;
for (index = 1; index <=3; index++){
boxN = (struct Node ⋆) malloc(sizeof(struct Node));
boxE -> next = boxN;
boxN -> value = index;
boxE = boxN; }
for (index = 0; index <= 3; index++) {
printf("value at index %d is %d\m", index, head -> value);
head = head -> next;
printf("value at index %d is %d\n", index + 1, head -> value);}}
Which one of the statement below is correct about the program ?
Consider the following ANSI C program
#include <stdio.h>
int foo(int x, int y, int q)
{
if ((x <= 0 && (y <= 0))
return q;
if (x <= 0)
return foo(x, y - q, q);
if (y <= 0)
return foo(x - q, y, q);
return foo (x, y - q, q) + foo(x - q, y, q);
}
int main()
(
int r = foo(15, 15, 10);
printf("%d", r);
return 0;
}
The output of the program upon execution is ________