Sunteți pe pagina 1din 36

06/03/2023, 12:00 Test Curs 2: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 7 March - 13 March / Test Curs 2

Started on Tuesday, 8 March 2022, 8:01 PM


State Finished
Completed on Tuesday, 8 March 2022, 8:03 PM
Time taken 1 min 44 secs
Marks 4.00/4.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Ordonati de la primul parametru la ultimul parametru registrii folositi pentru a pasa argumentele pentru un apel de sistem.
ebx 
ecx 
edx 
esi 
edi 
ebp 
eax

Your answer is correct.


The correct answer is:
Ordonati de la primul parametru la ultimul parametru registrii folositi pentru a pasa argumentele pentru un apel de sistem.
[ebx]
[ecx]
[edx]
[esi]
[edi]
[ebp]

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=358737&cmid=180889 1/3
06/03/2023, 12:00 Test Curs 2: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

În ce condiții următoarele două apeluri sunt echivalente:


copy_to_user(user_ptr, kernel_ptr, size)
memcpy(user_ptr, kernel_ptr, size)
Sistem pe 32 de biți cu un split user/kernel 3/1.

Select one or more:


a. kernel_ptr este un pointer valid, user_ptr este un pointer valid cu valoarea mai mare decât 0xc0000000
b. kernel_ptr este un pointer valid, user_ptr este un pointer valid cu valoarea mai mica decât 0xc0000000
c. kernel_ptr este un pointer invalid
d. kernel_ptr este un pointer valid, user_ptr este un pointer invalid

Răspunsul dumneavoastră este corect.


The correct answers are: kernel_ptr este un pointer valid, user_ptr este un pointer valid cu valoarea mai mica decât 0xc0000000,
kernel_ptr este un pointer invalid

Question 3
Correct
Mark 1.00 out of 1.00

Supervisor  Mode  Access  Prevention  este un feature hardware pe platforma x86  prin care
se poate dezactiva temporar accesul la user  space atunci cand rulam in kernel  mode.
ppc arm

Your answer is correct.


The correct answer is:
[Supervisor] [Mode] [Access] [Prevention] este un feature hardware pe platforma [x86] prin care se poate dezactiva temporar accesul la
[user] space atunci cand rulam in [kernel] mode.

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=358737&cmid=180889 2/3
06/03/2023, 12:00 Test Curs 2: Attempt review

Question 4
Correct
Mark 1.00 out of 1.00

Pentru următoare secvența de cod, câte intrări vor fi adăugate în tabela de excepții:
char x;
short y;
int i, s = 0;

if (get_user(x, user_ptr_1))
return -EINVAL;
for(i = 0; i < x; i++) {
    if (get_user(y, user_ptr_2))
        return -EINVAlL;
    s += y;
}

Answer: 2 

The correct answer is: 2

◀︎Test Curs 1
Jump to...
Test Curs 3 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=358737&cmid=180889 3/3
06/03/2023, 12:00 Test Curs 3: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 14 March - 20 March / Test Curs 3

Started on Tuesday, 15 March 2022, 8:00 PM


State Finished
Completed on Tuesday, 15 March 2022, 8:01 PM
Time taken 44 secs
Marks 5.00/5.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Folositi debugger-ul pentru a inspecta procesul syslogd.


1. Ce comanda putem folosi pentru a lista fisierele deschise de un proces? print task->files->fd_array 

2. Cate fisiere sunt deschise? 4 


3. Ce comanda putem folosi pentru a determina numele unui fisier asociat cu un descriptor?
print task->files->fd_array[fd]->f_path->dentry->d_name 
4. Ce nume are fisierul asociat descriptorului 3? messages 

Your answer is correct.


The correct answer is:
Folositi debugger-ul pentru a inspecta procesul syslogd.
1. Ce comanda putem folosi pentru a lista fisierele deschise de un proces? [print task‑>files‑>fd_array]
2. Cate fisiere sunt deschise? [4]
3. Ce comanda putem folosi pentru a determina numele unui fisier asociat cu un descriptor? [print
task‑>files‑>fd_array[fd]‑>f_path‑>dentry‑>d_name]
4. Ce nume are fisierul asociat descriptorului 3? [messages]

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=369941&cmid=186889 1/4
06/03/2023, 12:00 Test Curs 3: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

Câte procese ruleaza și care este numărul maxim de fire de execuție ce aparțin unui singur proces, dacă valoarea pointer-ului câmpului
mm din structura task_struct este, pentru fiecare task_struct in parte:
0xc1231000, 0xc1232000, 0xc1231000, 0xc1231000, 0xc1233000. 
Select one or more:
a. maxim 3 fire de execuție într-unul din procese 
b. 3 procese
c. maxim 2 fire de execuție într-unul din procese 
d. 1 proces
e. 2 procese
f. maxim 1 fir de execuție într-unul din procese 

Răspunsul dumneavoastră este corect.


The correct answers are: 3 procese, maxim 3 fire de execuție într-unul din procese 

Question 3
Correct
Mark 1.00 out of 1.00

Dimensiunea structurii tread_info este THREAD_SIZE 


O potentiala valoare pentru dimensiunea structurii este 4096 

4097 4095

Your answer is correct.


The correct answer is:
Dimensiunea structurii tread_info este [THREAD_SIZE]
O potentiala valoare pentru dimensiunea structurii este [4096]

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=369941&cmid=186889 2/4
06/03/2023, 12:00 Test Curs 3: Attempt review

Question 4
Correct
Mark 1.00 out of 1.00

Care din urmatoarele afirmatii sunt adevarate, atunci cand se executa o schimbare de context?
Select one or more:
a. Registrul EIP este salvat in task_struct
b. Registrul ESP este salvat pe stiva
c. Registrele generale sunt salvate pe stiva
d. Registrul ESP este salvat in task_struct
e. Registrele generale sunt salvate in task_struct
f. Registrul EIP este salvat pe stiva

Your answer is correct.


The correct answers are:
Registrul ESP este salvat in task_struct,
Registrele generale sunt salvate pe stiva,
Registrul EIP este salvat pe stiva

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=369941&cmid=186889 3/4
06/03/2023, 12:00 Test Curs 3: Attempt review

Question 5
Correct
Mark 1.00 out of 1.00

Modificarea de mai jos incearca sa marcheze in mod special care din procese?
diff --git a/scripts/gdb/linux/tasks.py b/scripts/gdb/linux/tasks.py
index 17ec19e9b5bf..7e43c163832f 100644
--- a/scripts/gdb/linux/tasks.py
+++ b/scripts/gdb/linux/tasks.py
@@ -75,10 +75,13 @@ class LxPs(gdb.Command):
def invoke(self, arg, from_tty):
gdb.write("{:>10} {:>12} {:>7}\n".format("TASK", "PID", "COMM"))
for task in task_lists():
- gdb.write("{} {:^5} {}\n".format(
+ check = task["mm"].format_string() == "0x0"
+ gdb.write("{} {:^5} {}{}{}\n".format(
task.format_string().split()[0],
task["pid"].format_string(),
- task["comm"].string()))
+ "[" if check else "",
+ task["comm"].string(),
+ "]" if check else ""))

Select one:
a. swapper
b. init
c. procese obisnute
d. kernel threads

Your answer is correct.


The correct answer is:
kernel threads

◀︎Test Curs 2
Jump to...
Test Curs 4 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=369941&cmid=186889 4/4
06/03/2023, 11:59 Test Curs 1: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 28 February - 6 March / Test Curs 1

Started on Tuesday, 1 March 2022, 7:59 PM


State Finished
Completed on Tuesday, 1 March 2022, 8:01 PM
Time taken 2 mins 2 secs
Marks 3.00/3.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Care din urmatoarele afirmatii sunt adevarate:


a. Un kernel monolitic ruleaza stiva de retea in user mode
b. Un micro kernel este modular spre deosebire de un kernel monolitic care nu poate fi modular
c. Un micro kernel ruleaza subsistemul de fisiere in user mode
d. Un kernel monolitic este mai performant decat un micro kernel
e. Serviciile oferite de un sistem de operare cu nucleu de tip micro kernel sunt mai greu de depanat decat serviciile oferite de 
un kernel monolitic.
f. Un micro kernel ruleaza mult mai putin cod in mod privilegiat decat un kernel monolitic

Your answer is correct.


The correct answers are:
Un kernel monolitic este mai performant decat un micro kernel, Un micro kernel ruleaza mult mai putin cod in mod privilegiat decat un
kernel monolitic,
Un micro kernel ruleaza subsistemul de fisiere in user mode,
Serviciile oferite de un sistem de operare cu nucleu de tip micro kernel sunt mai greu de depanat decat serviciile oferite de un kernel
monolitic.

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=349940&cmid=166988 1/3
06/03/2023, 11:59 Test Curs 1: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

Un sistem de operare ASMP scaleaza (relativ la numarul de procesoare din sistem) la fel de bine  decat / ca un sistem de tip SMP
atunci cand rulam aplicatii ce folosesc in mod preponderent procesorul.
Un sistem de operare ASMP scaleaza (relativ la numarul de procesoare din sistem) mai prost  decat / ca un sistem de tip SMP
atunci cand rulam aplicatii ce folosesc in mod preponderent operatii cu fiserele.
Un sistem de operare SMP scaleaza (relativ la numarul de procesoare din sistem) mai bine  decat / ca un sistem de tip ASMP
atunci cand rulam aplicatii ce folosesc in mod preponderent operatii cu reteaua.

Your answer is correct.


The correct answer is:
Un sistem de operare ASMP scaleaza (relativ la numarul de procesoare din sistem) [la fel de bine] decat / ca un sistem de tip SMP atunci
cand rulam aplicatii ce folosesc in mod preponderent procesorul.
Un sistem de operare ASMP scaleaza (relativ la numarul de procesoare din sistem) [mai prost] decat / ca un sistem de tip SMP atunci
cand rulam aplicatii ce folosesc in mod preponderent operatii cu fiserele.
Un sistem de operare SMP scaleaza (relativ la numarul de procesoare din sistem) [mai bine] decat / ca un sistem de tip ASMP atunci
cand rulam aplicatii ce folosesc in mod preponderent operatii cu reteaua.

Question 3
Correct
Mark 1.00 out of 1.00

fs/file.c  continue codul pentru un subsistem al nucleului Linux 


arch/arm  contine codul specific unei architecturi
drivers/gpio/gpio‑dln2.c  contine codul pentru un driver
arch/arm/mach‑imx/  continue codul specific pentru o masina

Your answer is correct.


The correct answer is:
[fs/file.c] continue codul pentru un subsistem al nucleului Linux 
[arch/arm] contine codul specific unei architecturi
[drivers/gpio/gpio‑dln2.c] contine codul pentru un driver
[arch/arm/mach‑imx/] continue codul specific pentru o masina

◀︎Cont unic catalog SO2


https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=349940&cmid=166988 2/3
06/03/2023, 11:59 Test Curs 1: Attempt review

Jump to...
Test Curs 2 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=349940&cmid=166988 3/3
06/03/2023, 12:00 Test Curs 4: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 21 March - 27 March / Test Curs 4

Started on Tuesday, 22 March 2022, 7:34 PM


State Finished
Completed on Tuesday, 22 March 2022, 7:59 PM
Time taken 24 mins 45 secs
Marks 4.00/4.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Watchdog Interrupt  Trap  Unmaskable 


Demand paging Exception  Fault  Maskable 

Division by zero Exception  Trap  Maskable 

Timer Interrupt  Trap  Maskable 


System call Exception  Trap  Maskable 
Breakpoint Exception  Trap  Maskable 

Exception Interrupt
Trap Fault
Unmaskable Maskable

Your answer is correct.


The correct answer is:
Watchdog [Interrupt] [Trap] [Unmaskable]
Demand paging [Exception] [Fault] [Maskable]
Division by zero [Exception] [Trap] [Maskable]
Timer [Interrupt] [Trap] [Maskable]
System call [Exception] [Trap] [Maskable]
Breakpoint [Exception] [Trap] [Maskable]

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=381036&cmid=192177 1/4
06/03/2023, 12:00 Test Curs 4: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

Care din următoarele afirmații sunt adevărate?


Select one or more:
a. întreruperile pot fi dezactivate la nivelul procesorului
b. întreruperile pot fi dezactivate la nivelul controlerului de întreruperi
c. întreruperile pot fi dezactivate la nivelul dispozitivului (e.g. din registrii de control al dispozitivului)
d. Intreruperi cu prioritatea mai mica nu pot preempta handlerul de intreruperi pentru o intrerupere cu prioritate mai mare
e. Procesorul poate incepe procesarea unei noi intreruperi inainte ca cea precedenta sa fi fost terminata
f. Pe sistem SMP aceasi intreruperea poate fi rutata catre procesoare diferite

Răspunsul dumneavoastră este corect.


The correct answers are: întreruperile pot fi dezactivate la nivelul procesorului, întreruperile pot fi dezactivate la nivelul dispozitivului
(e.g. din registrii de control al dispozitivului), întreruperile pot fi dezactivate la nivelul controlerului de întreruperi,
Intreruperi cu prioritatea mai mica nu pot preempta handlerul de intreruperi pentru o intrerupere cu prioritate mai mare,
Procesorul poate incepe procesarea unei noi intreruperi inainte ca cea precedenta sa fi fost terminata,
Pe sistem SMP aceasi intreruperea poate fi rutata catre procesoare diferite

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=381036&cmid=192177 2/4
06/03/2023, 12:00 Test Curs 4: Attempt review

Question 3
Correct
Mark 1.00 out of 1.00

Urmatoarele comenzi gdb sunt folosite pentru a determina handler-ul exceptiei int80. Aranjati comenzile si output-ul comenizilor in
ordinea potrivita.
monitor info registers 

set $idtr = 0xff800000 

set $idtr_entry = *(uint64_t*)($idtr + 8 * 128) 

set $idtr_addr=($idtr_entry>>48<<16)|($idtr_entry&0xffff) 
print (void*)$idtr_addr 

(void *) 0xc15de874 <entry_INT80_32> 

set $idtr = 0xff801000
(void *) 0xc15de780 <entry_SYSENTER_32>

Your answer is correct.


The correct answer is:
Urmatoarele comenzi gdb sunt folosite pentru a determina handler-ul exceptiei int80. Aranjati comenzile si output-ul comenizilor in
ordinea potrivita.
[monitor info registers]
[set $idtr = 0xff800000]
[set $idtr_entry = *(uint64_t*)($idtr + 8 * 128)]
[set $idtr_addr=($idtr_entry>>48<<16)|($idtr_entry&0xffff)]
[print (void*)$idtr_addr]
[(void *) 0xc15de874 <entry_INT80_32>]

Question 4
Correct
Mark 1.00 out of 1.00

Care din următoarele faze de tratare a întreruperilor rulează cu întreruperile dezactivate la nivel de procesor
Select one or more:
a. amânate (deferred)
b. imediate
c. critice

Răspunsul dumneavoastră este corect.


The correct answers are: critice, imediate

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=381036&cmid=192177 3/4
06/03/2023, 12:00 Test Curs 4: Attempt review

◀︎Test Curs 3
Jump to...
Test Curs 5 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=381036&cmid=192177 4/4
06/03/2023, 12:01 Test Curs 6: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 4 April - 10 April / Test Curs 6

Started on Wednesday, 6 April 2022, 3:48 PM


State Finished
Completed on Wednesday, 6 April 2022, 3:50 PM
Time taken 1 min 34 secs
Marks 4.00/4.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Mapati valorile urmatorilor selectori cu potentiali descriptori de segmente.

0x60 kernel segment 

0x73 user segment 

Your answer is correct.


The correct answer is:
0x60 → kernel segment,
0x73 → user segment

Question 2
Correct
Mark 1.00 out of 1.00

Care este dimensiunea unei pagini virtuala pe un sistem x86 pe 32 de biti?


a. 4KB
b. 1MB
c. 2KB
d. 4MB

Your answer is correct.


The correct answers are:
4KB,
4MB

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=407311&cmid=203528 1/2
06/03/2023, 12:01 Test Curs 6: Attempt review

Question 3
Correct
Mark 1.00 out of 1.00

Pe un sistem Linux pe 32 de biți adresa fizică 1512MB poate fi mapată în care din următoarele zone:
Select one or more:
a. userspace
b. lowmem
c. highmem

Răspunsul dumneavoastră este corect.


The correct answers are: userspace, highmem

Question 4
Correct
Mark 1.00 out of 1.00

Care din următoarele funcții pot fi folosite pentru accesarea unei zone de memorie fizică arbitrară (o zonă de memorie aflată oriunde în
spațiul fizic de memorie al sistemului):
Select one or more:
a. kmap
b. kmalloc
c. vmalloc
d. kmap_atomic
e. ioremap

Răspunsul dumneavoastră este corect.


The correct answers are: ioremap, kmap, kmap_atomic

◀︎Test Curs 5
Jump to...
Test Curs 7 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=407311&cmid=203528 2/2
06/03/2023, 12:01 Test Curs 7: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 11 April - 17 April / Test Curs 7

Started on Tuesday, 12 April 2022, 8:29 PM


State Finished
Completed on Tuesday, 12 April 2022, 8:30 PM
Time taken 24 secs
Marks 5.00/5.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Care este dimensiunea vectorului mem_map, in KB, pentru imaginea nucleului ce ruleaza pe masina virtuala SO2. Masina virtuala
foloseste 256MB.
Hint: pentru a determina dimensiunea structurii page folosit make gdb
Answer: 2048 

The correct answer is: 2048

Question 2
Correct
Mark 1.00 out of 1.00

Cate operatii sunt necesare pentru a alloca o pagina daca dimensiunea celui mai mic block disponibil este 131072? 
Answer: 5 

The correct answer is: 5

Question 3
Correct
Mark 1.00 out of 1.00

Între structurile cache și slab (folosite de către alocatorul SLAB) există o asociere de tipul 1:N (un cache  la mai multe slab‑uri) 

1:1 (unu cache la un slab) N:1 (mai multe cache‑uri la un slab)
arbitrara

Răspunsul dumneavoastră este corect.


The correct answer is:
Între structurile cache și slab (folosite de către alocatorul SLAB) există o asociere de tipul [1:N (un cache la mai multe slab‑uri)]
https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=420368&cmid=208290 1/2
06/03/2023, 12:01 Test Curs 7: Attempt review

Question 4
Correct
Mark 1.00 out of 1.00

Care poate fi cauza unui page-fault cu următoarele caracteristici: 


instrucțiunea care a executat accesul se afla în kernel space dar nu se afla în tabela de execepții
accessul a fost făcut către o zonă din userspace care nu este mapată
Select one or more:
a. Kernel bug
b. Parametrul unui apel de sistem este un pointer invalid
c. Demand paging
d. Swap
e. Copy on write

Răspunsul dumneavoastră este corect.


The correct answer is: Kernel bug

Question 5
Correct
Mark 1.00 out of 1.00

În ce condiții este recomandat și posibil să folosim vmalloc în loc de kmalloc pentru a aloca memorie in kernel? Selectați toate
raspunsurile corecte.
Select one or more:
a. Dimensiunea buffer-ului este de ordinul zecilor de MB.
b. Dimensiunea buffer-ului este de ordinul zecilor de KB.
c. Memoria alocată este folosită în transferuri DMA.
d. Memoria alocată nu este folosită în transferuri DMA.

Răspunsul dumneavoastră este corect.


The correct answers are: Dimensiunea buffer-ului este de ordinul zecilor de MB., Memoria alocată nu este folosită în transferuri DMA.

◀︎Test Curs 6
Jump to...
Test Curs 8 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=420368&cmid=208290 2/2
06/03/2023, 12:01 Test Curs 10: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 9 May - 15 May / Test Curs 10

Started on Wednesday, 25 May 2022, 5:19 PM


State Finished
Completed on Wednesday, 25 May 2022, 5:20 PM
Time taken 1 min 4 secs
Marks 4.00/4.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Ce operaţii efectueaza un network device driver la recepţionarea unei întreruperi TX?


Select one or more:
a. planificarea pachetului pentru a-l prelucra ulterior
b. eliberarea bufferului
c. planificarea pachetului pentru a-l transmite ulterior
d. transmiterea pachetului
e. prelucrearea pachetului
f. alocarea unui bufer nou

Răspunsul dumneavoastră este corect.


The correct answer is: eliberarea bufferului

Question 2
Correct
Mark 1.00 out of 1.00

Ce operaţii efectueaza un network device driver la recepţionarea unei întreruperi RX? 


Select one or more:
a. alocarea unui bufer nou
b. eliberarea bufferului
c. planificarea pachetului pentru a-l prelucra ulterior
d. transmiterea pachetului
e. prelucrearea pachetului
f. planificarea pachetului pentru a-l transmite ulterior

Răspunsul dumneavoastră este corect.


The correct answers are: alocarea unui bufer nou, planificarea pachetului pentru a-l prelucra ulterior

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500619&cmid=234815 1/2
06/03/2023, 12:01 Test Curs 10: Attempt review

Question 3
Correct
Mark 1.00 out of 1.00

Ce functie trebuie folosită pentru a adăuga unui skb header-ul de nivel 2?

Select one or more:


a. skb_reserve
b.  skb_pull
c. skb_trim
d. skb_push
e. skb_put

Răspunsul dumneavoastră este corect.


The correct answer is: skb_push

Question 4
Correct
Mark 1.00 out of 1.00

Rutarea pachetelor se face in cadrul fazei NET_SOFTIRQ.


Select one:
True 
False

The correct answer is 'True'.

◀︎Test Curs 9
Jump to...
Test Curs 11 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500619&cmid=234815 2/2
06/03/2023, 12:00 Test Curs 5: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 28 March - 3 April / Test Curs 5

Started on Tuesday, 29 March 2022, 9:02 PM


State Finished
Completed on Tuesday, 29 March 2022, 9:06 PM
Time taken 4 mins 1 sec
Marks 4.00/4.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Mapați sursele de concurență pentru următoarele cazuri


Sistem single
core, kernel întreruperi
nepreemptiv 

Sistem întreruperi, preempția cauzată de un proces mai prioritar și execuția unui proces sau întreruperi pe alt procesor
multiprocesor 
Sistem single
core, kernel întreruperi și preemția cauzată de un proces mai prioritar
preemptiv 

Răspunsul dumneavoastră este corect.


The correct answer is: Sistem single core, kernel nepreemptiv → întreruperi, Sistem multiprocesor → întreruperi, preempția cauzată de
un proces mai prioritar și execuția unui proces sau întreruperi pe alt procesor, Sistem single core, kernel preemptiv → întreruperi și
preemția cauzată de un proces mai prioritar

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=391990&cmid=197230 1/4
06/03/2023, 12:00 Test Curs 5: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

Completați primitivele de sincronizare necesare pentru următoarele secvențe de cod

context proces rutina de tratare a unei întreruperi


static struct my_context context; static struct my_context context;
static int my_open(struct inode *inode, struct file *file) irqreturn_t my_handler(int irq_no, void *dev_id)
{
{
...
...
spin_lock 
spin_lock_irqsave 
// modify shared context
// modify shared context
spin_unlock 
spin_unlock_irqrestore 
...
... }
}

Răspunsul dumneavoastră este corect.


The correct answer is:
Completați primitivele de sincronizare necesare pentru următoarele secvențe de cod

context proces rutina de tratare a unei întreruperi


static struct my_context context; static struct my_context context;
static int my_open(struct inode *inode, struct file *file) irqreturn_t my_handler(int irq_no, void *dev_id)
{ {
...
...
[spin_lock]
[spin_lock_irqsave]
// modify shared context
// modify shared context [spin_unlock]
[spin_unlock_irqrestore] ...
... }
}

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=391990&cmid=197230 2/4
06/03/2023, 12:00 Test Curs 5: Attempt review

Question 3
Correct
Mark 1.00 out of 1.00

Care este starea celor două linii de cache a două procesoare ce folosesc protocolul MESI pentru secvența:

Procesor A nop eax <- [a] (load) nop [a] <- eax (store) nop
Procesor B nop nop eax <- [a] (load) nop eax <- [a] (load)
Cache A I E  S  M  S 
Cache B I I  S  I  S 

Răspunsul dumneavoastră este corect.


The correct answer is:
Care este starea celor două linii de cache a două procesoare ce folosesc protocolul MESI pentru secvența:

Procesor A nop eax <- [a] (load) nop [a] <- eax (store) nop
Procesor B nop nop eax <- [a] (load) nop eax <- [a] (load)
Cache A I [E] [S] [M] [S]
Cache B I [I] [S] [I] [S]

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=391990&cmid=197230 3/4
06/03/2023, 12:00 Test Curs 5: Attempt review

Question 4
Correct
Mark 1.00 out of 1.00

Completați primitivele de sincronizare RCU necesare pentru următoarele secvențe de cod

parcurgere listă ștergere element din listă


rcu_read_lock 
spin_lock 
list_for_each_entry_rcu(i, head) {
list_del_rcu(&node->list);
...
} spin_unlock 
rcu_read_unlock  synchronize_rcu 
kfree(node);

; // nop

Răspunsul dumneavoastră este corect.


The correct answer is:
Completați primitivele de sincronizare RCU necesare pentru următoarele secvențe de cod

parcurgere listă ștergere element din listă


[rcu_read_lock]
list_for_each_entry_rcu(i, head) { [spin_lock]
... list_del_rcu(&node->list);
[spin_unlock]
}
[synchronize_rcu]
[rcu_read_unlock]
kfree(node);

◀︎Test Curs 4
Jump to...
Test Curs 6 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=391990&cmid=197230 4/4
06/03/2023, 12:01 Test Curs 8: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 18 April - 24 April / Test Curs 8

Started on Tuesday, 19 April 2022, 7:57 PM


State Finished
Completed on Tuesday, 19 April 2022, 8:02 PM
Time taken 5 mins 42 secs
Marks 7.00/7.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Folosind gdb inspectati fisierele deschise pentru syslogd.


Care este numele fisierului asociat cu messages
file descriptorul 3? 

Cate fisiere sunt deschise? 4



Ce comanda trebuie sa folosim pentru print ((struct task_struct*)0xcb365040)->files->fd_array
a lista descriptorii de fisiere deschise? 
Ce comanda trebui sa folosim pentr a
afla numele fiserului deschis asociat cu print ((struct task_struct*)0xcb365040)->files->fd_array[3]->f_path->dentry->d_name
file descriptorul 3? 

Your answer is correct.


The correct answer is:
Care este numele fisierului asociat cu file descriptorul 3? → messages,
Cate fisiere sunt deschise? → 4,
Ce comanda trebuie sa folosim pentru a lista descriptorii de fisiere deschise? → print ((struct task_struct*)0xcb365040)->files-
>fd_array,
Ce comanda trebui sa folosim pentr a afla numele fiserului deschis asociat cu file descriptorul 3? → print ((struct
task_struct*)0xcb365040)->files->fd_array[3]->f_path->dentry->d_name

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=435686&cmid=213314 1/5
06/03/2023, 12:01 Test Curs 8: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

Cate inode-uri sunt folosite de catre urmatoarele fisiere:


touch a
ln -s a b
ln a c
Answer: 2 

The correct answer is: 2

Question 3
Correct
Mark 1.00 out of 1.00

Care din structurile de mai jos sunt create/modificate/sterșe la redenumirea unui fișier?
Select one or more:
a. dmap
b. dentry
c. dzone
d. izone
e. imap
f. inode

Răspunsul dumneavoastră este corect.


The correct answers are: dentry, dzone

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=435686&cmid=213314 2/5
06/03/2023, 12:01 Test Curs 8: Attempt review

Question 4
Correct
Mark 1.00 out of 1.00

Care din structurile de mai jos sunt create/modificate/sterșe la scrierea de date la sfârșitul unui fișier existent (O_APPEND write)?

Select one or more:


a. file
b. inode
c. imap
d. izone
e. dmap
f. dentry
g. dzone

Răspunsul dumneavoastră este corect.


The correct answers are: izone, inode, file, dmap, dzone

Question 5
Correct
Mark 1.00 out of 1.00

Care din structurile de mai jos sunt create/modificate/sterșe la stergerea unui fișier existent cu o dimensiune > 0?
Select one or more:
a. imap
b. dmap
c. dzone
d. dentry

Răspunsul dumneavoastră este corect.


The correct answers are: imap, dentry, dmap, dzone

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=435686&cmid=213314 3/5
06/03/2023, 12:01 Test Curs 8: Attempt review

Question 6
Correct
Mark 1.00 out of 1.00

Care din urmatoarele cache-uri sunt implementate de catre VFS?


a. File cache
b. Dentry cache
c. inode cache
d. Dir cache
e. Page cache

Your answer is correct.


The correct answers are:
inode cache,
Page cache,
Dentry cache

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=435686&cmid=213314 4/5
06/03/2023, 12:01 Test Curs 8: Attempt review

Question 7
Correct
Mark 1.00 out of 1.00

Aranjati in ordine (de la nivelul aplicatie la nivelul cel mai apropiate de hardware) urmatoarele componente:
Aplicatie
apeluri de sistem 

page cache 

driver sistem de fisiere ext4 
LVM (Linux Volume Manager) 
I/O scheduler 

driver SSD 

Hardware

Your answer is correct.


The correct answer is:
Aranjati in ordine (de la nivelul aplicatie la nivelul cel mai apropiate de hardware) urmatoarele componente:
Aplicatie
[apeluri de sistem]
[page cache]
[driver sistem de fisiere ext4]
[LVM (Linux Volume Manager)]
[I/O scheduler]
[driver SSD]
Hardware

◀︎Test Curs 7
Jump to...
Test Curs 9 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=435686&cmid=213314 5/5
06/03/2023, 12:01 Test Curs 9: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 2 May - 8 May / Test Curs 9

Started on Wednesday, 25 May 2022, 5:17 PM


State Finished
Completed on Wednesday, 25 May 2022, 5:19 PM
Time taken 2 mins 5 secs
Marks 4.00/4.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Pentru ca mecanismul de verificare din Linux kernel să detecteze un deadlock de tip AB BA, ca în exemplul de mai jos, este necesar ca
primul fir de execuție să nu termine execuția înainte de începerea execuției celui de al doilea fir de execuție.
noinline int deadlock_thread_a(void *arg)
{
mutex_lock(&a);
mutex_lock(&b);
/* work */
mutex_unlock(&b);
mutex_unlock(&a);
}

noinline int deadlock_thread_b(void *arg)


{
mutex_lock(&b);
mutex_lock(&a);
/* work */
mutex_unlock(&a);
mutex_unlock(&b);
}

Select one:
True
False 

The correct answer is 'False'.

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500599&cmid=234812 1/3
06/03/2023, 12:01 Test Curs 9: Attempt review

Question 2
Correct
Mark 1.00 out of 1.00

Ce informare oferă codul afișat într-un segmentation fault / oops? (alegeți 2 variante)
a. a fost o instrucțiune de tip I/O sau nu
b. este vorba de un apel de sistem
c. sursa este context proces sau context întrerupere
d. a fost pagina în swap sau nu
e. tipul de acces (scriere, sau citire)
f. sursa este cod kernel sau cod user

Your answer is correct.


The correct answers are: tipul de acces (scriere, sau citire), sursa este cod kernel sau cod user

Question 3
Correct
Mark 1.00 out of 1.00

Care din urmatoarele facilitati kernel pot fi folosite pentru a depana probleme cu alocarea memoriei
a. Lockdep checker
b. kmemleak
c. perf
d. CONFIG_DEBUG_SLAB
e. KASan

Your answer is correct.


The correct answers are:
kmemleak,
CONFIG_DEBUG_SLAB,
KASan

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500599&cmid=234812 2/3
06/03/2023, 12:01 Test Curs 9: Attempt review

Question 4
Correct
Mark 1.00 out of 1.00

Care este cauza cea mai probabilă pentru acest kernel bug:
BUG: unable to handle kernel paging request at 6b6b6b6b

Select one or more:


a. Accesarea unei element al unei liste ce a fost deja șters din listă
b. Buffer overflow
c. Utilizarea unei zone de memorie înainte de inițializare
d. Utilizarea unei zone de memorie după eliberarea ei
e. Buffer underflow

Răspunsul dumneavoastră este corect.


The correct answer is: Utilizarea unei zone de memorie după eliberarea ei

◀︎Test Curs 8
Jump to...
Test Curs 10 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500599&cmid=234812 3/3
06/03/2023, 12:02 Test Curs 12: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 23 May - 29 May / Test Curs 12

Started on Wednesday, 25 May 2022, 5:24 PM


State Finished
Completed on Wednesday, 25 May 2022, 5:24 PM
Time taken 16 secs
Marks 3.00/3.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Care din urmatoarele caracteristici ale virtualizarii nu pot fi îndeplinite de către emulare:
Select one or more:
a. performanța
b. securitatea
c. fidelitatea

Răspunsul dumneavoastră este corect.


The correct answer is: performanța

Question 2
Correct
Mark 1.00 out of 1.00

Care din următoarele afirmații sunt adevărate în cazul paravirtualizării?


Select one or more:
a. Intrucțiunile privilegiate sunt emulate
b. Operațiile I/O sunt emulate
c. Sistemul de operare gazdă trebuie modificat

Răspunsul dumneavoastră este corect.


The correct answer is: Sistemul de operare gazdă trebuie modificat

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500639&cmid=234818 1/2
06/03/2023, 12:02 Test Curs 12: Attempt review

Question 3
Correct
Mark 1.00 out of 1.00

Care din urmatoarele operații ale sistemului de operare guest sunt emulate de către VMM atunci când emularea MMU se face cu
mecanismul "shadow page tables" (si nu "lazy shadow sync")
Select one or more:
a. Modificarea tabelei de pagini
b. Accesul la registrul CR3
c. Invalidare TLB
d. Citirea tabelei de pagini 

Răspunsul dumneavoastră este corect.


The correct answers are: Modificarea tabelei de pagini, Invalidare TLB, Accesul la registrul CR3

◀︎Test Curs 11
Jump to...
Bonus assignment: Assignment 4.c - Virtual Machine Manager with KVM ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500639&cmid=234818 2/2
06/03/2023, 12:01 Test Curs 11: Attempt review

Dashboard / Courses / 03. Automatică şi Calculatoare / Licenţă / Domeniul Calculatoare şi tehnologia informaţiei / Anul 4 / Semestrul 2
/ Seria C3 / 03-ACS-L-A4-S2-SOI-C3 / 16 May - 22 May / Test Curs 11

Started on Wednesday, 25 May 2022, 5:20 PM


State Finished
Completed on Wednesday, 25 May 2022, 5:21 PM
Time taken 37 secs
Marks 3.00/3.00
Grade 10.00 out of 10.00 (100%)
Question 1
Correct
Mark 1.00 out of 1.00

Ce opțiune QEMU este folosită pentru identificarea platformei?


a. -machine
b. -mmu
c. -dev
d. -arch
e. -cpu

Your answer is correct.


The correct answer is: -machine

Question 2
Correct
Mark 1.00 out of 1.00

Ce tip de operații NU sunt dependente de arhitectură?


a. înregistrarea unei întreruperi
b. înregistrarea unui sistem de fișiere
c. schimbare de context
d. locking pe un spinlock
e. înregistrarea unui apel de sistem

Your answer is correct.


The correct answer is: înregistrarea unui sistem de fișiere

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500623&cmid=234817 1/2
06/03/2023, 12:01 Test Curs 11: Attempt review

Question 3
Correct
Mark 1.00 out of 1.00

Care este echivalentul ACPI pe arhitectura ARM?


a. SLAB
b. virtualizare
c. interrupt descriptor table
d. emulare
e. device tree

Your answer is correct.


The correct answer is: device tree

◀︎Test Curs 10
Jump to...
Test Curs 12 ▶︎

https://archive.curs.upb.ro/2021/mod/quiz/review.php?attempt=500623&cmid=234817 2/2

S-ar putea să vă placă și