2012-02-03 44 views
6

Tôi muốn biết điều gì có nghĩa là ngăn xếp USB và một ví dụ về nó. Tôi đã nghiên cứu rất nhiều về USB và tôi đọc một số cuốn sách như USB trong một nutshell nhưng "USB stack" đã không được đề cập.Ngăn xếp USB là gì?

Trả lời

8

Thuật ngữ "ngăn xếp" đề cập đến cấu trúc dữ liệu trừu tượng (không liên quan đến điều này) hoặc cho một tập hợp phần mềm thực hiện chức năng cụ thể. Trong trường hợp "ngăn xếp USB", đó là bộ sưu tập phần cứng, phần sụn, mô-đun hạt nhân, trình điều khiển và chương trình người dùng cho phép liên lạc qua các liên kết USB.

Thuật ngữ "ngăn xếp" được sử dụng vì các thành phần phần mềm thường được xếp chồng lên nhau, mỗi thành phần sử dụng dịch vụ của (các) lớp bên dưới nó.

Bạn cũng có thể nghe về "ngăn xếp mạng" hoặc "LAMP stack" hoặc các cụm từ tương tự khác. Wikipedia có một bài viết trên Solution stack, đó là ý tưởng tương tự.

+1

Vì vậy, nó không chỉ đề cập đến phần mềm? http://www.google.com/imgres?um=1&hl=vi&sa=N&biw=1366&bih=600&tbm=isch&tbnid=Bp8R0jm6_crSPM:&imgrefurl=http://www.jungo.com/st/embedded_usb_otg.html&docid=LIDLc6Q-lKTWaM&imgurl = http: //www.jungo.com/st/images/otg_feb05.jpg&w=530&h=355&ei=CDMsT5jPGZGUOpChrYEO&zoom=1&iact=hc&vpx=107&vpy=150&dur=3239&hovh=184&hovw=274&tx=178&ty=72&sig=106979144409125464825&page=1&tbnh=113&tbnw=168&start = 0 & ndsp = 21 & ved = 1t: 429, r: 0, s: 0 – Ahmed

+2

Chính xác, việc cắt "ngăn xếp" trên các lớp triển khai khác nhau và bao gồm nhiều loại thành phần khác nhau, bao gồm phần cứng trong trường hợp USB. –

+1

Và ngăn xếp phụ thuộc vào phần cứng? Có một ngăn xếp khác nhau cho mỗi chip? – Ahmed

6

USB stack, chỉ là một cụm từ dựa trên khái niệm chung của 'phần mềm ngăn xếp', chẳng hạn như ngăn xếp TCP/IP, GSM chồng vv

Đó là khuôn khổ, thường được cung cấp bởi các nhà sản xuất thiết bị USB, hoặc hệ điều hành các nhà phát triển, cho phép các nhà phát triển khác tập trung vào thịt của việc triển khai của họ, thay vì lo lắng về việc triển khai các cấp thấp hơn của USB một cách chính xác.

Trong trường hợp USB, về cơ bản có lớp giao tiếp (tất cả mọi người gọi họ là hơi khác nhau):

  • Link Layer (Serial IO) - giao dịch với các chuyển động dòng khác biệt và phát tín hiệu, và giải mã các dòng nhị phân dữ liệu, rất thường xuyên trong phần cứng
  • USB Packet layer - giao dịch với cấu trúc của các gói dữ liệu USB
  • USB chức năng bắt buộc - liệt kê, đệm, điểm cuối API mức
  • USB cao - Audio, HID, vv, mà có riêng của họ restricti nhu cầu và nhu cầu.

Nó tương tự như ngăn xếp TCP/IP của một hệ điều hành hiện đại:

  • Lớp vật lý (thường được thực hiện trong phần cứng trên thẻ ethernet)
  • Link Layer (lớp địa chỉ MAC, thường được thực hiện trong phần cứng trên card ethernet)
  • Network layer (IP, định tuyến)
  • Transport layer (TCP)
  • ứng dụng của bạn lớp cụ thể (HTTP ngăn xếp, vv).
Các vấn đề liên quan