-
Data: 2009-05-19 21:08:15
Temat: Re: jak napisać szybki program
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Maciej Sobczak pisze:
> On 19 Maj, 20:20, Michoo <m...@v...pl> wrote:
>
>> Samo AIO nie da prawie nic - zaoszczędzi
>> jedynie czas transferu z bufora do pamięci
>
> Dlaczego? Myślisz, że przy AIO nie trzeba tego transferu robić?
> Trzeba, inaczej użytkownik z tych danych nie skorzysta.
DMA
>
> char my_buffer[my_size];
>
> Niezależnie od metody dane muszą być przetransferowane z/do my_buffer.
W przypadku dobrej implementacji (na gruncie czystej teorii - nie chce
mi się teraz zastanawiać gdzie to jak jest zaimplementowane - chodzi mi
o sam fakt, że jest to jedyny zysk jaki można osiągnąć) i/o kopiowanie
danych na drodze dysk->ram, bufor karty sieciowej-> ram, etc powinno być
robione "na zewnątrz" procesora (i to w trybie nie odcinającym go od szyny).
synchroniczne i/o: program robi wywołanie systemowe "czytaj" system
wywala wątek z kolejki procesów gotowych i zleca kontrolerowi transfer,
po otrzymaniu przerwania od kontrolera proces wraca do kolejki i w
najbliższym czasie wraca z wywołania
asynchroniczne i/o: program robi wywołanie systemowe "czytaj" system
zleca kontrolerowi transfer, wątek powraca z wywołania i może pracować.
po otrzymaniu przerwania od kontrolera system powiadamia wątek o
zakończeniu operacji.
W drugim przypadku wątek może pracować w trakcie kopiowania danych.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 19.05.09 21:09 A.L.
- 19.05.09 22:12 Marteno Rodia
- 19.05.09 22:36 A.L.
- 19.05.09 22:38 Mateusz Loskot
- 20.05.09 08:55 Maciej Sobczak
- 20.05.09 12:32 A.L.
- 20.05.09 17:44 Marteno Rodia
- 20.05.09 18:23 Michoo
- 20.05.09 18:31 Marcin 'Qrczak' Kowalczyk
- 21.05.09 02:23 Mariusz Marszałkowski
- 21.05.09 03:26 Mariusz Marszałkowski
- 21.05.09 03:51 Mariusz Marszałkowski
- 21.05.09 03:57 Mariusz Marszałkowski
- 21.05.09 06:35 Jacek Czerwinski
- 21.05.09 09:50 Paweł Kierski
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-06 PROGRAM DOPŁAT DO AUT ELEKTRYCZNYCH TO ABSURD. ZA ŚRODKI Z KPO KUPIMY NIEMIECKIE I CHIŃSKIE AUTA
- 2025-02-05 ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-07 Smar do video
- 2025-02-06 Litowe baterie AA Li/FeS2 a alkaliczne
- 2025-02-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-07 Warszawa => System Architect (Java background) <=
- 2025-02-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-07 Warszawa => Solution Architect (Java background) <=
- 2025-02-07 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-07 Lublin => Programista Delphi <=
- 2025-02-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-07 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-07 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo