This shows you the differences between two versions of the page.
|
so:laboratoare:laborator-10 [2022/03/01 17:51] teodor_stefan.dutu [Soluții] Move to public repo |
so:laboratoare:laborator-10 [2022/05/10 17:40] (current) teodor_stefan.dutu [Zero-copy I/O] Replace broken link. |
||
|---|---|---|---|
| Line 342: | 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 378: | 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 ====== |
| - | + | ||
| - | ===== 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> | + | |
| <note important> | <note important> | ||
| Line 395: | Line 391: | ||
| Pentru mai multe informații despre folosirea utilitarului git, urmați ghidul de la https://gitimmersion.com. | Pentru mai multe informații despre folosirea utilitarului git, urmați ghidul de la https://gitimmersion.com. | ||
| + | </note> | ||
| + | |||
| + | ===== 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> | </note> | ||