緩衝器檢視原始碼討論檢視歷史
緩衝器 |
中文名稱;緩衝寄存器 外文名稱;buffer 又稱;緩衝器 分類;輸入緩衝器和輸出緩衝器 類型;電梯緩衝器、數控緩衝器等 作用;起協調和緩衝作用 |
緩衝器在不同的領域有不同的含義。
在計算機領域,緩衝器指的是緩衝寄存器,它分輸入緩衝器和輸出緩衝器兩種。前者的作用是將外設送來的數據暫時存放,以便處理器將它取走;後者的作用是用來暫時存放處理器送往外設的數據。有了數控緩衝器,就可以使高速工作的CPU與慢速工作的外設起協調和緩衝作用,實現數據傳送的同步。由於緩衝器接在數據總線上,故必須具有三態輸出功能。
在其他領域,還有電梯緩衝器,汽車彈簧緩衝器等,其目的是用於減緩速度,提高安全性和舒適性。[1]
緩衝寄存器又稱緩衝器,它分輸入緩衝器和輸出緩衝器兩種。前者的作用是將外設送來的數據暫時存放,以便處理器將它取走;後者的作用是用來暫時存放處理器送往外設的數據。由於緩衝器接在數據總線上,故必須具有三態輸出功能。
目錄
釋義:
buffer英音:['bʌfə]美音:['bʌfɚ]
英文名:buffer 中文譯名: 緩衝、緩衝器、緩衝液。
解釋:
1、電信設備。在數據傳輸中,用來彌補不同數據處理速率速度差距的存儲裝置叫做緩衝器。把數據存放到緩衝器中的技術叫做緩衝。
2、生化術語。緩衝液:化學試劑。用於緩衝PH的變化,常用於生物工程實驗,如DNA、RNA等物質的提取和提純,酶的性質的測定,蛋白質的分離等等。緩衝:某些試劑具有使溶液在加入酸或鹼性物質的時候PH變化不明顯的作用,這種作用叫做緩衝。
主要用來完成介質液體或氣體波動壓力趨向於平穩的容器。
專用語
接口集成電路專用語
最基本線路構成的門電路存在着抗干擾性能差和不對稱等缺點。為了克服這些缺點,可以在輸出或輸入端附加反相器作為緩衝級;也可以輸出或輸入端同時都加反相器作為緩衝級。這樣組成的門電路稱為帶緩衝器的門電路。
帶緩衝輸出的門電路輸出端都是1個反相器,輸出驅動能力僅由該輸出級的管子特性決定,與各輸入端所處邏輯狀態無關。而不帶緩衝器的門電路其輸出驅動能力與輸入狀態有關。另一方面。帶緩衝器的門電路的轉移特性至少是由3級轉移特性相乘的結果,因此轉換區域窄,形狀接近理想矩形,並且不隨輸入使用端數的情況而變化、加緩衝器的門電路,抗干擾性能提高10%電源電壓。此外,帶緩衝器的門電路還有輸出波形對稱、交流電壓增益大、帶寬窄、輸入電容比較小等優點。不過,由於附加了緩衝級,也帶來了一些缺點。例如傳輸延遲時間加大,因此,帶緩衝器的門電路適宜用在高速電路系統中。
基本原理
在CPU的設計中,一般輸出線的直流負載能力可以驅動一個TTL負載,而在連接中,CPU的一根地址線或數據線,可能連接多個存儲器芯片,但存儲器芯片都為MOS電路,主要是電容負載,直流負載遠小於TTL負載。故小型系統中,CPU可與存儲器直接相連,在大型系統中就需要加緩衝器。
任何程序或數據要為CPU所使用,必須先放到主存儲器(內存)中,即CPU只與主存交換數據,所以主存的速度在很大程度上決定了系統的運行速度。程序在運行期間,在一個較短的時間間隔內,由程序產生的地址往往集中在存儲器的一個很小範圍的地址空間內。指令地址本來就是連續分布的,再加上循環程序段和子程序段要多次重複執行,因此對這些地址中的內容的訪問就自然的具有時間集中分布的傾向。數據分布的集中傾向不如程序這麼明顯,但對數組的存儲和訪問以及工作單元的選擇可以使存儲器地址相對地集中。這種對局部範圍的存儲器地址頻繁訪問,而對此範圍外的地址訪問甚少的現象被稱為程序訪問的局部化(Locality of Reference)性質。由此性質可知,在這個局部範圍內被訪問的信息集合隨時間的變化是很緩慢的,如果把在一段時間內一定地址範圍被頻繁訪問的信息集合成批地從主存中讀到一個能高速存取的小容量存儲器中存放起來,供程序在這段時間內隨時採用而減少或不再去訪問速度較慢的主存,就可以加快程序的運行速度。這個介於CPU和主存之間的高速小容量存儲器就稱之為高速緩衝存儲器,簡稱Cache。不難看出,程序訪問的局部化性質是Cache得以實現的原理基礎。同理,構造磁盤高速緩衝存儲器(簡稱磁盤Cache),也將提高系統的整體運行速度CPU一般設有一級緩存(L1 Cache)和二級緩存(L2 Cache)。一級緩存是由CPU製造商直接做在CPU內部的,其速度極快,但容量較小,一般只有十幾K。PⅡ以前的PC一般都是將二級緩存做在主板上,並且可以人為升級,其容量從256KB到1MB不等,而PⅡ CPU則採用了全新的封裝方式,把CPU內核與二級緩存一起封裝在一隻金屬盒內,並且不可以升級。二級緩存一般比一級緩存大一個數量級以上,另外,在CPU中,已經出現了帶有三級緩存的情況。
高速緩衝存儲器
高速緩衝存儲器,即Cache。我們知道,數據分布的集中傾向不如程序這麼明顯,如果把在一段時間內一定地址範圍被頻繁訪問的信息集合成批地從主的系統中,CPU訪問數據時,在Cache中能直接找到的概率,它是Cache的一個重要指標,與Cache的大小、替換算法、程序特性等因素有關。增加Cache後,CPU訪問主存的速度是可以預算的,64KB的Cache可以緩衝4MB的主存,且命中率都在90%以上。以主頻為100MHz的CPU(時鐘周期約為10ns)、20ns的Cache、70ns的RAM、命中率為90%計算,CPU訪問主存的周期為:有Cache時,20×0.9+70×0.1=34ns;無Cache時,70×1=70ns。由此可見,加了Cache後,CPU訪問主存的速度大大提高了,但有一點需注意,加Cache只是加快了CPU訪問主存的速度,而CPU訪問主存只是計算機整個操作的一部分,所以增加Cache對系統整體速度只能提高10~20%左右。
java.nio.Buffer直接已知子類:ByteBuffer,CharBuffer,DoubleBuffer,FloatBuffer,IntBuffer,LongBuffer,ShortBufferpublic abstract classBufferextendsObject一個用於特定基本類型數據的容器。
緩衝區是特定基本類型元素的線性有限序列。除內容外,緩衝區的基本屬性還包括容量、限制和位置:
緩衝區的容量是它所包含的元素的數量。緩衝區的容量不能為負並且不能更改。
緩衝區的限制是第一個不應該讀取或寫入的元素的索引。緩衝區的限制不能為負,並且不能大於其容量。
緩衝區的位置是下一個要讀取或寫入的元素的索引。緩衝區的位置不能為負,並且不能大於其限制。
對於每個非 boolean 基本類型,此類都有一個子類與之對應。
傳輸數據
此類的每個子類都定義了兩種獲取和放置操作:
相對操作讀取或寫入一個或多個元素,它從當前位置開始,然後將位置增加所傳輸的元素數。如果請求的傳輸超出限制,則相對獲取操作將拋出BufferUnderflowException,相對放置操作將拋出BufferOverflowException;這兩種情況下,都沒有數據被傳輸。
絕對操作採用顯式元素索引,該操作不影響位置。如果索引參數超出限制,絕對獲取操作和放置操作將拋出IndexOutOfBoundsException。
當然,通過適當通道的 I/O 操作(通常與當前位置有關)也可以將數據傳輸到緩衝區或從緩衝區傳出數據。
做標記和重置
緩衝區的標記是一個索引,在調用reset方法時會將緩衝區的位置重置為該索引。並非總是需要定義標記,但在定義標記時,不能將其定義為負數,並且不能讓它大於位置。如果定義了標記,則在將位置或限制調整為小於該標記的值時,該標記將被丟棄。如果未定義標記,那麼調用reset方法將導致拋出InvalidMarkException。
不變式
標記、位置、限制和容量值遵守以下不變式:
0<=標記<=位置<=限制<=容量新創建的緩衝區總有一個 0 位置和一個未定義的標記。初始限制可以為 0,也可以為其他值,這取決於緩衝區類型及其構建方式。一般情況下,緩衝區的初始內容是未定義的。
清除反轉重繞
除了訪問位置、限制、容量值的方法以及做標記和重置的方法外,此類還定義了以下可對緩衝區進行的操作:
clear()使緩衝區為一系列新的通道讀取或相對放置操作做好準備:它將限制設置為容量大小,將位置設置為 0。
flip()使緩衝區為一系列新的通道寫入或相對獲取操作做好準備:它將限制設置為當前位置,然後將位置設置為 0。
rewind()使緩衝區為重新讀取已包含的數據做好準備:它使限制保持不變,將位置設置為 0。
只讀緩衝區
每個緩衝區都是可讀取的,但並非每個緩衝區都是可寫入的。每個緩衝區類的轉變方法都被指定為可選操作,當對只讀緩衝區調用時,將拋出ReadOnlyBufferException。只讀緩衝區不允許更改其內容,但其標記、位置和限制值是可變的。可以調用其isReadOnly方法確定緩衝區是否為只讀。
線程安全
多個當前線程使用緩衝區是不安全的。如果一個緩衝區由不止一個線程使用,則應該通過適當的同步來控制對該緩衝區的訪問。
調用鏈
指定此類中的方法返回調用它們的緩衝區(否則它們不會返回任何值)。此操作允許將方法調用組成一個鏈;例如,語句序列
b.flip(); b.position(23); b.limit(42);可以由以下更緊湊的一個語句代替 b.flip().position(23).limit(42);
從以下版本開始:1.4
電梯緩衝器
緩衝器是電梯安全系統的最後一個環節,在電梯出現故障或事故蹲底時起到緩衝的作用。從而緩解電梯或電梯裡的人免受直接的撞擊。
電梯緩衝器主要分為:油壓緩衝器、彈簧緩衝器和聚氨酯緩衝器,其中油壓緩衝器由於適應各種速度噸位要求應用比較普遍,彈簧緩衝器用於低速電梯。
汽車彈簧緩衝器
汽車彈簧緩衝器(緩衝膠)是一種高彈性高韌度的橡膠類製品,屬汽車改裝類配件。用來安裝在汽車懸掛系統的螺旋彈簧處,主要起到緩衝避震作用並對避震器起來保護,這種功能是一種物理作用。
緩衝膠外觀是有開口的圓環狀,上下各有一條凹槽(用來容置螺旋彈簧),側邊有兩個、三個或多個孔位。根據彈簧間距的標準規格,緩衝膠分為 A+A、A、B、C、D、E、F 七種標準型號。理論上,這七款型號可以囊括全球極大部分螺旋彈簧避震車型所需。
緩衝膠亦有稱之為緩衝器、緩衝墊、緩衝塊、減震膠、避震膠等等,最廣泛最正確的全稱是「汽車彈簧緩衝膠」,英文名稱是 Car Spring Buffer Retainer
參考來源
參考資料
- ↑ 氣缸液壓緩衝器緩衝效果好嗎氣缸緩衝效果對比,快資訊 , 2019-08-06