Differences

This shows you the differences between two versions of the page.

Link to this comparison view

so:laboratoare:laborator-10 [2020/05/02 13:16]
dragos_florin.costea [Zero-copy I/O]
so:laboratoare:laborator-10 [2022/05/10 17:40] (current)
teodor_stefan.dutu [Zero-copy I/O] Replace broken link.
Line 1: Line 1:
 ====== Laborator 10 - Operații IO avansate - Windows ====== ====== Laborator 10 - Operații IO avansate - Windows ======
  
-==== Materiale ajutătoare ==== 
  
-  *[[http://​elf.cs.pub.ro/​so/​res/​laboratoare/​lab10-slides.pdf | lab10-slides.pdf]] ​ 
-  *[[http://​elf.cs.pub.ro/​so/​res/​laboratoare/​lab10-refcard.pdf | lab10-refcard.pdf]] 
  
 ==== Nice to read ==== ==== Nice to read ====
Line 345: Line 342:
 {{ so:​laboratoare-2013:​zero_copy.gif | }} {{ so:​laboratoare-2013:​zero_copy.gif | }}
  
-Mai multe detalii, inclusiv explicarea mai pe larg a contextului,​ puteți găsi [https://​developer.ibm.com/​technologies/​java/​articles/​j-zerocopy/​ | aici]].+Mai multe detalii, inclusiv explicarea mai pe larg a contextului,​ puteți găsi [[https://​developer.ibm.com/​articles/​j-zerocopy/​ | aici]]. **Atentie:​** articolul folosește greșit termenul //context switch//. De fapt, este vorba de o //schimbare de privilegiu//,​ deoarece se face o trecere din user mode în kernel mode.
 ==== TransmitFile ==== ==== TransmitFile ====
  
Line 381: Line 378:
 O funcție similară este funcția ''​[[http://​msdn.microsoft.com/​en-us/​library/​ms740566%28v=vs.85%29.aspx |TransmitPackets]]''​ care transmite date stocate în memorie pe un socket folosind cache-ul intern al sistemului de operare. Datele sunt reprezentate de o structură ''​TRANSMIT_PACKETS_ELEMENT''​. O funcție similară este funcția ''​[[http://​msdn.microsoft.com/​en-us/​library/​ms740566%28v=vs.85%29.aspx |TransmitPackets]]''​ care transmite date stocate în memorie pe un socket folosind cache-ul intern al sistemului de operare. Datele sunt reprezentate de o structură ''​TRANSMIT_PACKETS_ELEMENT''​.
  
-====== Exerciții ​de laborator ​====== +====== Exerciții ======
-===== Exercițiul 0 - Joc interactiv ​=====+
  
-  * Detalii desfășurare [[http://ocw.cs.pub.ro/courses/so/meta/notare#​joc_interactiv|joc]].+<note important>​ 
 +În cadrul laboratoarelor vom folosi repository-ul de git al materiei SO - https://github.com/​systems-cs-pub-ro/so. Va trebui sa clonați repository-ul pe masinile virtuale folosind comanda: ''​git clone https://​github.com/​systems-cs-pub-ro/so''​. Dacă doriți să descărcați repositoryul în altă locație, folosiți comanda ''​git clone https://github.com/​systems-cs-pub-ro/​so ${target}''​.
  
-===== Windows =====+Pentru a actualiza repository-ul,​ folosiți comanda ''​git pull origin master''​ din interiorul directorului în care se află repository-ul. Recomandarea este să îl actualizați cât mai frecvent, înainte să începeți lucrul, pentru a vă asigura că aveți versiunea cea mai recentă. În cazul în care gitul detectează conflicte la nivelul vreunui fişier, folosiți următoarele comenzi pentru a vă păstra modificările:​ 
 +<​code>​ 
 +git stash 
 +git pull origin master 
 +git stash pop 
 +</​code>​
  
-<note important>​Înainte de a folosi o structură specifică Async I/O Win32 APIasigurați-vă că ați zero-izat-o.</​note>​+Pentru mai multe informații despre folosirea utilitarului giturmați ghidul de la https://​gitimmersion.com. 
 +</​note>​
  
-În rezolvarea laboratorului ​folosiți ​arhiva de sarcini [[http://​elf.cs.pub.ro/​so/​res/​laboratoare/​lab10-tasks.zip | lab10-tasks.zip]]+===== Windows ===== 
 + 
 +<note important>​ 
 +Înainte de a folosi ​o structură specifică Async I/O Win32 API, asigurați-vă că ați zero-izat-o. 
 +</​note>​
  
 ==== Exercițiul 1 - Test operații asincrone ==== ==== Exercițiul 1 - Test operații asincrone ====
Line 453: Line 460:
  
 Compilați și rulați programul. ​ Compilați și rulați programul. ​
-===== Soluții ===== 
  
-[[http://​elf.cs.pub.ro/​so/​res/​laboratoare/​lab10-sol.zip | Soluţii laborator 10]] 
so/laboratoare/laborator-10.1588414606.txt.gz · Last modified: 2020/05/02 13:16 by dragos_florin.costea
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0