1 / 21

USB Ur Special Back-up

USB Ur Special Back-up. 2008315971 임혁준 2007314869 성노섭. Ur Special Back Up. Ur Special Back Up. Introduction of USB Topology of USB Hierarchy of USB Device Motivation What is Ur Special Back-up Sequence of Back-up Class Diagram Priority of Method Task Allocation

drea
Download Presentation

USB Ur Special Back-up

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. USB Ur Special Back-up 2008315971 임혁준 2007314869 성노섭 Ur Special Back Up

  2. Ur Special Back Up

  3. Introduction of USB Topology of USB Hierarchy of USB Device Motivation What is Ur Special Back-up Sequence of Back-up Class Diagram Priority of Method Task Allocation Difficulties of implementation Contents Ur Special Back Up

  4. 1. Introduction Ur Special Back Up

  5. Introduction of USB • Universal Serial Bus • 컴퓨터와 주변기기를 연결하는 데 • 쓰이는 입출력 표준 가운데 하나 • (USB 1.0, 1.1, 2.0, 3.0 등) Ur Special Back Up

  6. Topology of USB Bus • UsbHostController • - On-borad • - PCI cards Ur Special Back Up

  7. Hierarchy of USB Device Ur Special Back Up

  8. 2. Ur Special Back-up Ur Special Back Up

  9. Motivation Ur Special Back Up

  10. What is Ur Special Back-up SAVE Ur Special Back Up

  11. Sequence of Back-up Ur Special Back Up

  12. Class Diagram RunUsbControllerTest Root Bus에 연결된 Usb Device들의 정보 수집 및 출력 printUSBStack 버스에 연결된 USB Device들의 port, uniqueID, driverKeyName, friendlyDeviceName출력, 장치를 JUSB, NON-JUSB로 구분. printDeviceDescriptor idVendor, idProduct, Max Packet Size 등 특정 장치에 관한 세부적인 정보 출력 printDeviceDescriptorJUSB 장치가 JUSB driver를 사용할 수 있을 경우 printDeviceDescriptor정보와 동일한 정보를 출력한다. printConfigurationDescriptor getTotalLength, getNumInterfaces, getConfigurationValue, getAttributes등의 정보를 출력한다. actionPerformed EXIT버튼 클릭시 시스템을 종료한다. Ur Special Back Up

  13. Class Diagram printInterfaceDescriptors: Configuration 정보가 있는 경우 이 장치의 InterfaceClass, getInterfaceProtocol등의정보를 출력한다. printConfigurationDescriptor2 : JUSB driver를 이용할 수 있는 경우 사용되며 내용은 printInterfaceDescriptors와동일하다. printEndpointDescriptors : EndpointAddress, MaxPacketSize, Attribute를 얻는다. setupGui : 기본 frame을 생성하고 이 위에 생성되는 객체의 글씨체, 위치등을 설정 및WindowListener에창 종료를 이벤트를 연결한다. 실행시Bus들의 정보를 출력한다. setupTextGui : USBListener에 마운트 되는 device 정보와 파일 전송 시 파일전송 목록을 표시한다. Ur Special Back Up

  14. Class Diagram getGUID : 프로그램이 동작할 시에 할당된 GUID 정보에 USBListener에 의해 추가 된 GUID 정보를 비교하고 파일이 전송 될 GUID 정보를 얻기 위해 사용된다. CopyFrom : 원본파일이 위치한 곳의 정보와 저장할 곳의 위치 정보를 입력 받고, 원본파일이 위치한 곳의 위치에 폴더가 존재할 경우 하위 폴더를 탐색을 위해 CopyTo메소드 를 호출한다. CopyTo: CopyFrom으로 부터 전달 받은 Path 정보를 바탕으로 원본파일 위치가 폴더일 경우 폴더 아래 모든 파일을 복사하기 위해 CopyTo메소드를recursive 하게 호출한다. Ur Special Back Up

  15. Class Diagram busAdded : USBListener에서 새로운 Bus장치가Mount 되었을 경우에 대한 action을 처리한다. busRemoved : USBListener에서 새로운 Bus장치가 Mount 되었을 경우에 대한 action을 처리한다. deviceAdded : USBListener에서 새로운 USB가 Mount 되었을 경우에 대한 action을 처리한다. USB 장치가 새롭게 Mount 됨과 동시에 USB에 저장된 모든 파일을 Hard-disk로 전송한다. deviceRemoved : USBListener에서 USB장치가 제거되었을 경우에 대한 action을 처리한다. 제거 된 장치 정보를 출력해 준다. printUSBStack : Device 정보를 출력한다. Ur Special Back Up

  16. Priority of Method Ur Special Back Up

  17. 3. Conclusion Ur Special Back Up

  18. Task allocation • 임혁준 • - printUSBStack() • * printDeviceDescriptor(); • * printDeviceDescriptorJUSB() • * printConfigurationDescriptor(); • * printInterfaceDescriptors(); • * printEndpointDescriptors(); • 성노섭 • - setupGui(); • - setupTextGui(); • - getGUID() • - CopyTo() • - CopyFrom() • - ControllerUSBListener • * deviceRemoved() • * deviceAddes() Ur Special Back Up

  19. Difficulties of Implementation • 임혁준 • 1. USB 구조의 이해 • 2. 구조의 이해 후 구현에 있어서 Device Descriptor를 얻기 위한 • JAVA예제가 전무한 것이 가장 힘들었다. • 3. Compile시에 라이브러리와의 연동을 위해서 SYSTEM32에JUSB.SYS를 복사하고, • 장치정보를 등록하기 위해서 레지스트리에PATH정보를 등록 • 4. LISTENER를 위해 정보를 추출해야 하는데 얻은 DEVICE DESCRIPTOR의 정보를 • 하나씩 출력하면서 추적하는 것도 힘들었다.” Ur Special Back Up

  20. Difficulties of Implementation • 성노섭 • 1. LISTENER의 구현을 위해서 필요한 정보의 획득 • 2. 그 후에 얻은 DEVICE 정보를 토대로 어떻게 전송을 할 것인가 • 3. USB 통신에서의 4가지 방식(bulk, interrupt, control, isomorphic) 중에서일반적인 • bulk 통신을 기반으로 파일전송을 시도했는데, API상으로는 구현되어 있지 않았다. • 4. 전송을 위해서 Mount된 드라이버의 GUID를 얻는 것이 선행되어야 했는데, • Device Descriptor에서 얻은 Unique ID에 그 정보가 있다는 것을 알았지만, • 보안을 위해서 암호화되어 있었기 때문에 우회적인 방법의 탐색 Ur Special Back Up

  21. Thank you ~  Ur Special Back Up

More Related