 Universal Serial Bus 컴퓨터와 주변기기를 연결하는 데 쓰이는 입출력 표준 가운데 하나 (USB 1.0, 1.1, 2.0, 3.0 등 )

Slides:



Advertisements
Similar presentations
Primary Author: Girish Verma Secondary Author(s): Navya Prabhakar Presenter: Navya Prabhakar Company/Organization: CircuitSutra USB Modeling Quick Start.
Advertisements

인터넷기술 강혜원 Java 를 이용한 RDF Process 인터넷기술 012ITI01 강혜원.
GLOVE Collaboration 김민아 KISTI VCE Team.
RefWorks 15 분 완성. 순서 1) 계정 만들기 2) 레퍼런스 가져오기 3) 새 폴더 만들기 4) 폴더에 레코드 구성하기 5) 텍스트 파일반입 방식 6) 참고문헌 가져오기 7)Write-N-Cite III 을 사용하여 본문 내 인용 및 참고문헌 만들기.
Serial Interfaces. Bit serial bus New generation of busses Uses bit-serial, differential drive technology Uses on-line device drivers (Hot-plug technology)
15 장 Internet Relay Chat. contents What is IRC? Chatting in mIRC Chatting in Microsoft Chat and V-Chat Chatting in Ircle Chatting in Ircii Starting and.
Routing Protocol (RIP)
MVC 패턴과 Spring.
Chapter 5 Concepts 발표자 : 인공지능연구실 박진희.
제 12 장 Bus. kuic.kyonggi.ac.kr/~dssung 12.1 Why bus is needed ? 컴퓨터를 구성하는 요소들 (CPU, Memory, I/O) 이 정보를 교환하기 위해서는 통로가 필요함 통로를 구성하기 위한 대표적인 방법 MeshBus 장점.
Human Oriented technology Leader. We make New Technology Trend. Human Oriented Technology Leader!
KyungHee Univ. 1-0 문자열 입 · 출력 프로그램 작성 예. KyungHee Univ. 1-1  모니터에 문자열 출력 하는 프로그램 작성  표준 출력 장치에 문자를 출력 하는 함수 함수의 기본형 : void SCI_OutChar(letter)  문자를.
SAP Tuning 실무 교육
NAT 강사 김성훈.
UART Test UNIT 14 로봇 SW 교육원 조용수. 학습 목표 UART Init UART Send UART Receive UART -> Debugging Console Up/Down Game 제작 2.
HANNAM UNIVERSITY 1 Chapter 24 Hypertext Transfer Protocol (HTTP)
SOAP 실전예제 Internet Computing KUT Youn-Hee Han.
Codec,battery,powermanager 커널 드라이버
Time Management GNU TIMES 05` 정일웅 06` 강주효 07` 이병준 09` 조민정.
Introduction to Logic and Computer Design Chapter 1 Introduction Definition of TERMS † Platform, BSP(Board Support Package), Common.
The Knowledge Flow Interface 김개원 데이터베이스 연구실. 1. Overview.
Design, Implementation, and Evaluation of the Java Context Awareness Framework(JCAF) US lab.
Simple Bluetooth Security Manager based on the Open Bluetooth stack Dec Jongbae Park ( )
DHCP 2000 년 2 학기 이철 ( )
Module 01: Dynamic Host Configuration Protocol (DHCP)
Copyright © 2002, Cisco Systems, Inc. ICND Internet Protocol.
Hanyang Univ.  강의 목표 ◦ 임베디드 개발 환경의 이해  강의 내용 ◦ 교차 컴파일 환경 구축 및 부트로더 실습 Hanyang Univ.
Linux/UNIX Programming APUE (Introduction) 문양세 강원대학교 IT 대학 컴퓨터과학전공.
February 10 th 2010 Dehmani Feth-Allah M2 ISTRe Oral Presentation Universal Serial Bus.
Publishing Data for the Users (Chapter18) Data Warehousing Lab. Semester 2 HyunSuk Jung.
Customer Oriented Display System Human Oriented technology Leader.
Test Point Insertion Using Functional Flip- Flops to Drive Control Points International Test Conference 2009 Joon-Sung Yang 1, Benoit NaDeau-Dostie 2,
Information Systems Control & Audit(13) Shin, SooJung Based on Ron’s book.
1/43 고급자바프로그래밍 (ADVANCED JAVA PROGRAMMING) 강원대학교 컴퓨터학부 2012 년 가을학기 담당교수 정충교 1.
1 Relational Database Implementation of a Multi- dimensional database 컴퓨터언어연구실 석사 3 학기 김혜진 U.S. Patent Number: 5,926,818 Date of Patent: Jul.20,1999 inventor:
1 Router 구성도 (1/2). 2 Router 구성도 (2/2) Router Cisco 2611XM : 4 대 Cisco 2610XM : 6 대 Switch Cisco Catalyst 2950 : 5 대.
Chapter9_10 Circuit & Packet Switching
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 관리 페이지 접속방법 (AP 설정 변경.
Secure Data Deletion for USB Flash Memory 성균관대학교 윤 재 성 시스템 컨설턴트.
Ch. 8 IP : Internet Protocol 안 진 섭 TCP/IP Illustrated Vol.2.
1 Router 동작 mode (1/2) User Mode Router 동작 상태, Interface 의 상태, 현황등을 check 할 수 있는 command 사용 가능 Router Configuration 의 변경은 불가 Privileged Mode Router 의 Full.
문찬호 전공영어 2. QUESTION 66 A.The switch with the highest MAC address. B.The switch with the lowest IP address. C.The switch with the lowest.
First IEC 1 High-level Data Link Control  비트 중심 Protocol  Point-to-Point 및 Multi-Point Link 지원  Half Duplex 와 full Duplex 모두 지원  Flow Control Sliding.
The Java Context Awareness Framework(JCAF) Ji-Yeon Lee.
Chapter 14 DirectInput의 전말
Apache and Tomcat, Sample Form Servlet Application HyunSuk Jung
Ubiquitous Computing Practice - Part 4(RSSI) - Laboratory of Intelligent KUT ( Yong-hwan Kim Spring.
영상 획득 영상 저장 카메라 파라메터 커스텀 이미지
Mapreduce framework suffling & sorting. mapreduce example - wordcount.
Spring 프레임워크의 이해 4. Spring AOP 이해 및 활용 Grow up to be NHN 人 Spring – AOP 요구사항 !! 비즈니스 계층과 퍼시스턴스 계층의 모든 메써드 시작과 종료시 “ 메써드 시작 ”, “ 메써드 종료 ” 라는 Logging.
(Icommand & Processing). NXT The NXT is the brain of a MINDSTORMS® robot. It's an intelligent, computer- controlled LEGO® brick that lets a MINDSTORMS.
AOP 개념 및 Spring 의 AOP 기능. Spring Framework – AOP 절차적 프로그래밍 OOP AOP.
TCP/IP Illustrated Vol.1 Ch.10 : Dynamic Routing Protocls ( 수 ) 안 진 섭
Chapter 4. Queues - 2 Internet Computing KUT Youn-Hee Han.
제 10 장 Cache Memory. kuic.kyonggi.ac.kr/~dssung 10.0 Cache = Cache Memory Cache 는 Fast Memory 이며 CPU 와 Memory 사이에 위치 Memory 내 일부 정보를 가지고 있다 CPU Cache.
Overview of Location Management for Current Cellular and PCS 발표자 : 이진우.
Fork(), Concurrent Server, Normal Termination ( 금 ) 김 희 준
방명록 제작. 목차  기본 레이아웃  DB 구조  방명록 구조  코드 설명  화면 설명.
MPI: A Quick-Start Guide Information Physics Soon-Hyung Yook.
An Exception Monitoring System for Java ps lab Yun-kyung Kim.
MVC 패턴과 Spring.
Bootloader & Build process. Aduino UNO & Atmega328.
Analog IC design 1주차 Sept.25th.
How to using the JSVM toolkit Step 1 Feb Eun-Seok Ryu Department of Computer Science and Engineering Korea Univ.
May.28 1 Multimedia Lab  만나는 곳의 Junction 이 제대로 생겼는지 확인할 것.
데이터 베이스 설계 및 실습 #11 - JSP 예제.
Information Retrieval Hanyang Univ. Distributed Computing Systems Laboratory Query  Retrieval Techniques ( Query – Document )
USB 통신 환경 구축 with cypress device driver 2012.xx
J2ME Programming. Java2 Micro edition Introduction 년 5 월 26 일 CLDC, MIDP 라이브러리 Reference :
JAVA 실습 6 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. 1HPC & OT Lab.
Presentation transcript:

 Universal Serial Bus 컴퓨터와 주변기기를 연결하는 데 쓰이는 입출력 표준 가운데 하나 (USB 1.0, 1.1, 2.0, 3.0 등 )

 UsbHostController - On-borad - PCI cards

SAVE

Get Busses Info. Get Mounted Busses Listening Get Newly Mounted Busses Get Device Info. Get GUID File I/OBack-up

RunUsbController OBSERVATION_TIME : private static final int RunUSBControllerTest : public lstDeviceNames : private static List host : private Host AboutMountedbusses : private static TextArea AboutComer : public static TextArea Processing : public static TextArea ing : public static Checkbox al : public static ArrayList btnExit : Button actionPerformed : public void setupGui : public void setupTextGui : public void printUSBStack : private static void printDeviceDescriptor : public static void printDeviceDescriptorJUSB : public static void printConfigurationDescriptor : public static void printInterfaceDescriptors : public static void printConfigurationDescriptor2 : public static void printEndpointDescriptors : public static void 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 버튼 클릭시 시스템을 종료한다.

printInterfaceDescriptors : Configuration 정보가 있는 경우 이 장치의 InterfaceClass, getInterfaceProtocol 등의 정보를 출력한다. printConfigurationDescriptor2 : JUSB driver 를 이용할 수 있는 경우 사용되며 내용은 printInterfaceDescriptors 와 동일하다. printEndpointDescriptors : EndpointAddress, MaxPacketSize, Attribute 를 얻는다. setupGui : 기본 frame 을 생성하고 이 위에 생성되는 객체의 글씨체, 위치 등을 설정 및 WindowListener 에 창 종료를 이벤트를 연결한다. 실행시 Bus 들의 정보를 출력한다. setupTextGui : USBListener 에 마운트 되는 device 정보와 파일 전송 시 파일전송 목록을 표시한다. RunUsbController OBSERVATION_TIME : private static final int RunUSBControllerTest : public lstDeviceNames : private static List host : private Host AboutMountedbusses : private static TextArea AboutComer : public static TextArea Processing : public static TextArea ing : public static Checkbox al : public static ArrayList btnExit : Button actionPerformed : public void setupGui : public void setupTextGui : public void printUSBStack : private static void printDeviceDescriptor : public static void printDeviceDescriptorJUSB : public static void printConfigurationDescriptor : public static void printInterfaceDescriptors : public static void printConfigurationDescriptor2 : public static void printEndpointDescriptors : public static void

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

ControllerUSBListener bus : private Bus al2 : static ArrayList al3 : static ArrayList busAdded : public void busRemoved : public void deviceAdded : public void deviceRemoved : public void printUSBStack : private void 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 정보를 출력한다.

ControllerUSBListenerRating busAdded busRemoved deviceAdded deviceRemoved printUSBStack GetGUIDRating getGUID 1 ★ UsbCopyToRating CopyFrom CopyTo 1212 RunUsbControllerRating actionPerformed setupGui setupTextGuia printUSBStack printDeviceDescriptor printDeviceDescriptorJUSB printConfigurationDescriptor printInterfaceDescriptors printConfigurationDescriptor2 printEndpointDescriptors ★

 임혁준 - printUSBStack() * printDeviceDescriptor(); * printDeviceDescriptorJUSB() * printConfigurationDescriptor(); * printInterfaceDescriptors(); * printEndpointDescriptors();  성노섭 - setupGui(); - setupTextGui(); - getGUID() - CopyTo() - CopyFrom() - ControllerUSBListener * deviceRemoved() * deviceAddes()

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

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