Buffer múltiple

En informática, un buffer múltiple es el uso de más de un buffer para el almacenamiento de un bloque de datos. Si estos datos están siendo leídos y escritos al mismo tiempo, un buffer múltiple permite al "lector" obtener una visión completa de los datos (aunque no esté actualizada), en vez de tener una versión parcialmente actualizada de los datos que están siendo creados por el "escritor". También se usa para evitar la necesidad de usar RAM de doble puerto cuando los lectores y escritores son diferentes dispositivos.

Descripción

La forma más fácil de explicar cómo funciona un buffer múltiple es utilizando un ejemplo del mundo real:

Es un día soleado y decides sacar la piscina para el jardín, pero no encuentras la manguera, así que tienes que llenarla con cubos de agua. Así que llenas un cubo de agua (o buffer) del grifo (o fuente), cierras el grifo, llevas el cubo hasta la piscina, echas el agua dentro y vuelves al grifo para repetir el proceso. Esto es análogo al uso de un solo buffer. El grifo tiene que estar apagado mientras tú "procesas" el cubo de agua.

Ahora, piensa como lo harías si tuvieras dos cubos. Podrías llenar el primer cubo y cambiar al segundo mientras el grifo está abierto, de manera que tienes el periodo de tiempo que tarde en llenarse, para vaciar el primer cubo en la piscina. Cuando vuelvas, puedes cambiar los cubos de nuevo, de manera que vuelva a llenarse el primero mientras vacías el segundo en la piscina. Esto puede repetirse hasta que la piscina esté llena.

Es fácil ver que esta técnica llenará la piscina mucho más rápidamente que cuando se está esperando mientras que se llenan los cubos.

Esto es análogo al buffer doble. La fuente puede estar funcionando todo el tiempo pero no es necesario esperar mientras que se ejecuta el proceso.

Si se emplea a otra persona para llevar cubos a la piscina mientras uno está llenándose y otro vaciándose, esto sería análogo al buffer triple. Si este paso dura lo suficiente, podrían emplearse más cubos, con lo que el grifo estaría continuamente llenando cubos.

En informática la situación de tener una fuente que no puede, o no debe, ser cerrada es común (como en un Streaming de audio). Además, los ordenadores prefieren trabajar con porciones de datos antes que con corrientes (streams). En dichas situaciones suelen emplearse los buffers dobles.

Variabilidad

Doble buffer

Red de Petri

Red de Petri del buffer doble

La red de Petri de la ilustración muestra cómo trabaja un doble buffer; a saber:

Las transiciones W1 y W2 representan la escrituras de los buffers 1 y 2 respectivamente, mientras R1 y R2 representan la lectura de los buffers 1 y 2 respectivamente.

Al principio solo la transición W1 está activada. Cuando W1 acaba, tanto R1 como W2 están activas por lo que pueden proceder en paralelo. Cuando acaban, R2 y W1 proceden también en paralelo y así sucesivamente.

Después de la transición inicial (en la que solo W1 se inicia ) el sistema es periódico y las transiciones se activan siempre por pares (R1 con W2 y R2 con W1 respectivamente).

Esta red de Petri es viva y segura.

En gráficos por ordenador

En gráficos de computadora, el doble buffer es una técnica para la presentación de gráficos en tiempo real que elimina o reduce considerablemente el número de parpadeos, ruido u otros artefactos.

Es difícil que un programa refresque la imagen en una pantalla sin que los píxeles cambien más de una vez. Por ejemplo, para actualizar una página de texto es mucho más fácil borrar toda la página y, a continuación, dibujar las letras de nuevo, que borrar todos los píxeles que están presentes en la nueva imagen. Sin embargo, esta imagen intermedia (cuando se borran todos los píxeles) es percibida por el usuario como un parpadeo. Los monitores de ordenador constantemente redibujan su imagen visible (en torno a 60 veces por segundo), por lo que incluso una actualización perfecta puede ser visible momentáneamente como un divisor horizontal entre la "nueva" imagen y la "vieja" (efecto conocido como lagrimeo).

Una aplicación de software de almacenamiento en buffer doble almacena sus resultados en alguna región de la memoria RAM del sistema, cualquier región, a menudo se denomina "buffer de reserva". Cuando todas las operaciones de dibujo se consideran completadas, toda la región (o solo la parte modificada) se copia en la memoria RAM de vídeo (el "buffer frontal"), lo que suele ser la copia sincronizada con la viga de la trama del monitor con el fin de evitar que se rompa. El doble buffering necesariamente requiere más memoria de vídeo y el tiempo de CPU que el buffer, solo por la memoria de vídeo asignada para el buffer de reserva, el tiempo para la operación de copia, y el tiempo de espera para la sincronización.

Los gestores de ventanas de composición a menudo combinan la "copia" de la operación de "composición", utilizada para la posición de las ventanas, transformándolos con efectos de escala o deformaciones, y hacen partes transparentes. Así, el "buffer frente" solo puede contener la imagen compuesta vista en pantalla, mientras que hay otro "buffer de reserva" para cada ventana que contiene la imagen no compuesta del contenido de la ventana entera.

Triple buffer

En gráficos de computadora, el triple buffering es similar a la doble buffer, pero proporciona una mejora de la velocidad. En el doble buffer, el programa debe esperar hasta que el dibujo terminado se copia o se cambió antes de comenzar el próximo cambio. Este período de espera podría ser de varios milisegundos durante el cual no se puede tocar el buffer.

En triple buffering el programa cuenta con dos amortiguadores nuevos e inmediatamente puede empezar a dibujar el que no participa en dicha copia. El buffer en tercer lugar, el buffer frontal, es leído por la tarjeta gráfica para mostrar la imagen en el monitor. Una vez que el monitor ha sido actualizado, el buffer frontal se voltea con (o copiado de) el buffer de reserva. Dado que uno de los topes de vuelta siempre está completo, la tarjeta gráfica no tiene que esperar para que el software esté completo. En consecuencia, el software y la tarjeta gráfica son completamente independientes, y se puede ejecutar a su propio ritmo. Por último, la imagen mostrada se inició sin esperar a la sincronización y por lo tanto con un desfase mínimo. [1]

Debido a que el algoritmo de software no tener que sondear el hardware de gráficos para controlar los eventos de actualización, el algoritmo es libre de correr tan rápido como sea posible. Esto puede significar que varios dibujos que nunca se muestran son por escrito a los topes de vuelta. Este no es el único método de triple buffer disponible, pero es el más frecuente en la arquitectura de la PC donde la velocidad de la máquina de destino es muy variable.

Otro método de triple buffering implica la sincronización con la velocidad de fotogramas del monitor. El dibujo no se hace si los dos amortiguadores posteriores contienen imágenes terminadas que no se han mostrado todavía. Esto evita la pérdida de la CPU dibujando imágenes Undisplayed y también da lugar a una velocidad más constante (suave movimiento de objetos en movimiento), pero con aumento de la latencia. [2] Este es el caso cuando se utiliza triple buffer en DirectX, donde una cadena de 3 buffer son prestados y que aparecen siempre.

El buffer triple implica tres topes, pero el método puede extenderse a muchos como amortiguadores que resulte práctico para la aplicación. Por lo general, no hay ninguna ventaja de usar más de tres topes.

Cuádruple buffer

El término "buffering cuádruple" se utiliza en las implementaciones de estereoscópico, y significa el uso de doble buffer para cada una de las imágenes del ojo izquierdo y derecho, por lo tanto hay cuatro topes totales. El comando para intercambiar o copiar el buffer normalmente se aplica a los dos pares a la vez. Si triple buffering se utilizó entonces sería de seis topes.

Voltear la página

En este método (a veces llamado el buffer de ping-pong), en lugar de copiar los datos, los amortiguadores son capaces de ser mostrados (ambos están en VRAM). En un momento dado, un buffer se puede mostrar en el monitor, mientras que el otro buffer se está elaborando. Cuando el dibujo está completo, las funciones de los dos se conectan. La página-flip se consigue normalmente mediante la modificación del valor de un puntero al comienzo de la visualización de datos en la memoria de vídeo.

La página-flip es mucho más rápida que copiar los datos y puede garantizar que la ruptura no se verá, siempre y cuando las páginas se cambian durante el período verticales en blanco del monitor cuando no hay datos de video o se está elaborando. El buffer activo y visible se llama el buffer frontal, mientras que la página de fondo se llama el "buffer de reserva.

Otros usos

El término buffer doble se utiliza para copiar datos entre dos buffers para el acceso directo a memoria (Direct Memory Access, DMA) de las transferencias; no para mejorar el rendimiento, sino para satisfacer los requisitos específicos de direccionamiento de un dispositivo (especialmente los dispositivos de 32 bits en sistemas con direccionamiento más amplio, siempre a través de Extensión de Dirección Física). [3] Los controladores de dispositivos de Microsoft Windows son particularmente notables como un lugar donde el doble buffer sería viable de utilizar. En un sistema Linux o BSD éstos son llamados bounce buffers porque los datos deben "brincar" a través de estos buffers para entrada (input) o salida (output). El doble buffering también se utiliza como una técnica para facilitar el entrelazado o desentrelazado de señales de vídeo.

Referencias

Enlaces externos

Read other articles:

Kisenosato Yutaka稀勢の里 寛Informasi PersonalLahirYutaka Hagiwara3 Juli 1986 (umur 37)Ibaraki, JepangTinggi187 cm (6 ft 1+1⁄2 in)[1]Berat175 kg (386 pon; 27,6 st)[2]WebsiteTagonoura stable websiteKarierStableTagonouraPeringkat sekarangYokozunaDebutMaret 2002Peringkat tertinggiYokozuna (Januari 2017)Kejuaraan1 (Makuuchi)1 (Makushita)Penghargaan KhususOutstanding Performance (5)Fighting Spirit (3)Technique (1)Bintang Emas3Hakuhō (2...

 

Logo Landsverk Landsverk (AB Landsverk) adalah industri berat Swedia yang memproduksi peralatan militer seperti tank, perusak tank, SPAAG, mobil lapis baja, kendaraan off-road beroda dan beroda rantai dan peralatan sipil seperti gerbong, derek pelabuhan dan mesin pertanian. Perusahaan ini didirikan pada tahun 1872 sebagai Firman Petterson & Ohlsen. Landsverk terletak di Landskrona, Swedia. Sejarah Awal mula Tampilan atas Landsverk M38 Pada akhir 1920 perusahaan ini berada di ambang kebang...

 

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada September 2016. Oliver AdamsPekerjaanAktorTahun aktif2002–sekarang Oliver Adams (lahir 31 Agustus 1990) adalah aktor asal Amerika Serikat yang dikenal berperan sebagai Bobby dalam film American Crime. Filmografi Tahun Film Peran Catatan 2002 Providence Boy Se...

9M117 Bastion 9M117 Bastion adalah misil anti-tank beam-riding laser Rusia. Hal ini digunakan dalam sejumlah sistem senjata terpisah termasuk sistem rudal 9K116-1 Bastion (AT-10 Stabber), 9K118 Sheksna (AT-12 Swinger), Kastet dan 3UBK12 ditembakkan dari BMP-3. Proyektil 100 mm memasuki layanan pada tahun 1981.[1] Referensi ^ Angelskiy, R. (2002), p. 111-115 Angelskiy, R., Otechestvennye protivotankovye kompleksy (Domestic anti-tank systems), Moscow, 2002, ISBN 5-17-011744-2 (Rusia) Pr...

 

Indian Bird Sanctuary Nal Sarovar Bird SanctuaryShow map of GujaratShow map of IndiaLocationSanand Village, Gujarat, IndiaCoordinates22°46′N 72°02′E / 22.767°N 72.033°E / 22.767; 72.033Area0.120 km2 Ramsar WetlandOfficial nameNalsarovarDesignated24 September 2012Reference no.2078[1] Map Map location – Nal Sarovar Bird Sanctuary Boats leave at sunrise to go bird-watching. Merops orientalis at Nalsarovar Bird Sanctuary Nal Sarovar Bird Sanctua...

 

Russian scientific satellite Spektr-M Спектр-M MillimetronMission typeSub-millimeter/FarIROperatorRussian Astro Space CenterWebsitehttp://millimetron.ru/index.php/en/ Spacecraft propertiesManufacturerNPO LavochkinPayload mass6,240 kg (13,757 lb) Start of missionLaunch date2030 (planned)[1]RocketAngara A5Launch siteVostochny Site 1AContractorRoscosmos Orbital parametersReference systemSun–Earth L2RegimeHalo orbit Main telescopeDiameter10 m (33 ft)Wavele...

Papuan language spoken in parts of Indonesia Western PantarNative toIndonesiaRegionNusa Tenggara TimurNative speakers10,300 (2014)[1]Language familyTrans–New Guinea ? West Bomberai ?Timor–Alor–PantarAlor–PantarWestern PantarDialects Lamma Mauta Tubbe Language codesISO 639-3levGlottologlamm1241ELPWestern PantarThis article contains IPA phonetic symbols. Without proper rendering support, you may see question marks, boxes, or other symbols instead of Unicode c...

 

森川智之配音演员本名同上原文名森川 智之(もりかわ としゆき)罗马拼音Morikawa Toshiyuki昵称モリモリ[1]、帝王[1]国籍 日本出生 (1967-01-26) 1967年1月26日(57歲) 日本東京都品川區[1](神奈川縣川崎市[2]、橫濱市[3]成長)职业配音員、旁白、歌手、藝人音乐类型J-POP出道作品外國人取向的日語教材代表作品但丁(Devil May Cry)D-boy(宇宙騎...

 

2020年夏季奥林匹克运动会波兰代表團波兰国旗IOC編碼POLNOC波蘭奧林匹克委員會網站olimpijski.pl(英文)(波兰文)2020年夏季奥林匹克运动会(東京)2021年7月23日至8月8日(受2019冠状病毒病疫情影响推迟,但仍保留原定名称)運動員206參賽項目24个大项旗手开幕式:帕维尔·科热尼奥夫斯基(游泳)和马娅·沃什乔夫斯卡(自行车)[1]闭幕式:卡罗利娜·纳亚(皮划艇)&#...

Kingdom of Altava578–708The Kingdom of Altava (1) and other romanized berber kingdoms of the early sixth century.StatusRump state of the Mauro-Roman KingdomCapitalAltavaCommon languagesBerber, African Romance LatinReligion ChristianityGovernmentMonarchyKing • 578-670s (Unknown)• 670s Sekerdid• 680-690 Caecilius Historical eraMedieval• Collapse of the Mauro-Roman Kingdom 578• Annexed by Umayyad Caliphate 708 Preceded by Succeeded by Mauro-Roman Ki...

 

روبرت لاكوست (بالفرنسية: Robert Lacoste)‏  الحاكم العام للجزائر أثناء الاستعمار في المنصب9 فيفري 1956 – 13 ماي 1958 جورج كاترو أندري موترا سيناتور في إقليم دوردونيي في المنصب26 سبتمبر 1971 – 1 أكتوبر 1980 نائب في مجلس دوردونيي في المنصب21 يوليو 1970 – 5 مارس 1977 عمـدة بلدية أزورا في المنصب1945 ...

 

2013 Milwaukee IndyFestRace details9th round of the 2013 IndyCar Series seasonDateJune 15, 2013Official nameMilwaukee IndyFestLocationMilwaukee MileCoursePermanent racing facility1.015 mi / 1.633 kmDistance225 laps228.38 mi / 367.542 kmWeatherTemperatures reaching up to 73.4 °F (23.0 °C); wind speeds approaching 8 miles per hour (13 km/h)[1]Pole positionDriverMarco Andretti (Andretti Autosport)PodiumFirstRyan Hunter-Reay (Andretti Autosport)SecondHéli...

  لمعانٍ أخرى، طالع الدور (توضيح). 34°27′27″N 043°47′56″E / 34.45750°N 43.79889°E / 34.45750; 43.79889 الدور تقسيم إداري البلد العراق  [1] التقسيم الأعلى محافظة صلاح الدين  إحداثيات 34°27′27″N 43°47′56″E / 34.4575°N 43.798888888889°E / 34.4575; 43.798888888889   الرمز الجغرافي 99768  ت...

 

Questa pagina sull'argomento linguistica sembra trattare argomenti unificabili alla pagina Lingua ladina. Puoi contribuire unendo i contenuti in una pagina unica. Commenta la procedura di unione usando questa pagina di discussione. Segui i suggerimenti del progetto di riferimento. Questa voce o sezione sull'argomento dialetti non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le line...

 

Municipality in Nordeste, BrazilPorto Alegre do PiauíMunicipalityCountry BrazilRegionNordesteStatePiauíMesoregionSudoeste PiauiensePopulation (2020 [1]) • Total2,720Time zoneUTC−3 (BRT) Porto Alegre do Piauí is a municipality in the state of Piauí in the Northeast region of Brazil.[2][3][4][5] See also List of municipalities in Piauí References ^ IBGE 2020 ^ Divisão Territorial do Brasil (in Portuguese). Divisão Territ...

Slick Rick Основная информация Имя при рождении англ. Richard Martin Lloyd Walters[3] Дата рождения 14 января 1965(1965-01-14)[1][2] (59 лет) Место рождения Mitcham[вд], Мертон, Большой Лондон, Англия, Великобритания[3] Страна  Великобритания США Профессии рэпер, певец, м�...

 

Short strand of RNA or DNA that serves as a starting point for DNA synthesis For other uses, see Primer. The DNA replication fork. RNA primer labeled at top. A primer is a short, single-stranded nucleic acid used by all living organisms in the initiation of DNA synthesis. A synthetic primer may also be referred to as an oligo, short for oligonucleotide. DNA polymerase (responsible for DNA replication) enzymes are only capable of adding nucleotides to the 3’-end of an existing nucleic acid, ...

 

Fiksi interaktif atau cerkan interaktif (bahasa Inggris: Interactive fiction, sering disingkat IF) adalah lingkungan yang disimulasikan perangkat lunak tempat pemain menggunakan perintah teks untuk mengontrol karakter dan memengaruhi lingkungan. Karya dalam bentuk ini dapat dipahami sebagai narasi sastra, baik dalam bentuk narasi interaktif. Karya-karya ini juga dapat dipahami sebagai bentuk permainan video,[1] baik dalam bentuk permainan petualangan atau permainan role-playing. D...

يسرائير   طائرة تابعة لشركة يسرائير في مطار بن غوريون الدولي إياتا6H إيكاوISR رمز النداءISRAIR تاريخ الإنشاء 1996 الجنسية إسرائيل  المطارات الرئيسية مطار بن غوريون الدولي المطارات الثانوية مطار رامونمطار حيفا الشعار למה לשלם יותר? لماذا تدفع أكثر؟ المقرات الرئيسية تل أبيب ...

 

Questa voce o sezione sull'argomento telecomunicazioni non cita le fonti necessarie o quelle presenti sono insufficienti. Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. La modulazione di frequenzacarrier= frequenza portantesignal= segnale modulanteoutput = portante modulata La modulazione di frequenza, sigla FM (dall'analogo termine inglese frequency modulation) o più raramente MF[1], nelle telecomunicazioni, ...