Access 사용의 편리한 점과다른 데이터베이스와의 차이점 및 특징1. 데이터베이스와 데이터베이스시관리스템(DBMS)1 데이터베이스 : 하나 이상의 비즈니스 응용분야에서 사용할 수 있도록 데이터의 중복 없이 저장한 데이터의 집합2 데이터베이스 관리시스템 : 데이터베이스를 생성, 관리하여 사용자의 요구에 따라 추출된 데이터를 보여주며 일관성을 유지하는 시스템2. DBMS 종류1 파일 시스템 (File System) - Flat File, ISAM File, VSAM File2 계층형 데이터베이스 관리시스템 (HDBMS) - IBM IMS DB3 네트워크형 데이터베이스 관리시스템 (NDBMS) - CODASYL DB4 관계형 데이터베이스 관리시스템 (RDBMS) - IBM DB2, ORACLE, INFORMIX3. RDMBS의 특징1 SQL(Structured Query Language) 지원2 이전에 에플리케이션에서 처리해야 했던 많은 기능들을 DBMS가 지원- 데이터 무결성, 보안, 권한, 트랜젝션 관리, 록킹(Locking)등3 데이터 모델링이 간편해지고 에플리케이션 개발을 용이하게 지원4 데이터 모델링이 너무 간단하기 때문에 복합 에플리케이션 (CAD/CAM, CASE, Multimedia, GIS등)에는 적합하지 않음5 데이터베이스 특징- 데이터베이스는 테이블들로 구성된다.- 레코드(로우; 행)는 필드(컬럼)로 구성된다.- 한 필드는 단지 하나의 Data Item을 갖는다.- 레코드는 다른 레코드에 대하여 어떤 Pointer라도 갖지 못한다.- Data사이의 동적(Dynamic)인 상호 관계는 조인(Join)을 통하여 일어난다. 성능 문 제가 중요하게 발생함- 데이터베이스 스키마(Schema)에 대한 동적인 변화들이 가능하다. 예) 테이블에 대 한 새로운 필드의 추가, 삭제- 한 필드는 하나의 Data Item만을 포함한다. 레코드들을 중복시킴으로서 성능 함정 에 빠질 수 있다.- 멀티 미디어 자료 지원이 불가능4. RDBMS간 비교▶▷ 상용 데이터베이스 관리 시스템은 시장 점유율이 높은 가장 일반적인 데이터베이스 시스템을 말하며, Access와 오라클이 있다.▶▷ Access 프로그램의 장,단점은 아래에서 자세히 설명하겠다.{종 류장 점단 점Oracle- 많은 사용자가 존재함- 증된 제품의 우수성- d Party의 강력한 지원- 분산처리 지원 기능의 우수성SMP 및 MPP의 지원- 신제품의 출시가 늦어짐- 많은 하드웨어 자원의 필요- 복잡한 DBMS 관리- 가격이 동종의 DBMS보다 비쌈- 모든 제품에 Kernel이 필요- 배우기 힘든 제품 기능들의 존재Sybase- Client/Server용으로 설계되어 성능과 분산처리 지원이 탁월- 타 DB에 비하여 DBMS를 운영하기 위하여 적은 하드웨어 자원만으로도 충분- Open Server/MDI Gateway 지원- PowerBuilder와의 결합 및 지원 우수- Replication Server 특성 우수- Record Tracking 우수- 복잡한 DBMS 관리- 부족한 확장성- Sybase 자체개발등의 지원도구의 부족- 예전 버전에서의 표준SQL의 지원 불량- Microsoft에 의한 대체DBMS의 등장으로 독창성 훼손Informix- 안정된 Kernel- 사용자들의 만족도 우수- Low end Unix에서의 운영 우수성- 풍부한 4GL 도구의 지원- 풍부한 경험을 가진 개발자 및 사용자의 존재- PC급 지원기능의 한계- VMS의 지원 불가- 3rd Party 지원도구의 부족- 경쟁시장에서의 마케팅 부족MicrosoftSQL Server- Sybase의 장점들을 물려 받음- 저렴한 제품 가격- Windows NT환경에서 최적의 기능 및 성능을 발휘하도록 설계됨- Microsoft의 '토털 솔루션' 전략의 중심축- 단순한 데이터베이스 기능- Sybase의 특성(단점)들을 물려받음- Microsoft는 RDBMS만에 주력하는 회사가 아니므로 충분한 지원 및 더나은 DBMS로의 발전 전망 불투명- 최근의 Sybase의 신 기능의 결여- DBMS 전문가의 부족- 단순한 데이터베이스 기능Progress- 사용자 만족도 우수- 통합 개발지원도구- DBMS의 안정성 우수- 소규모 Unix Platform들을 기반 으로 할 때 운용성 우수- 3rd Party 지원도구의 부족- Server의 주요 기능들의 부족- 완전한 관계형 SQL API의 조건 미흡Qupta SQLBase- 간단한 DBMS 관리- 통합 윈도우 개발 및 사용자용 도구의 지원- IBM DB2와의 호환성- Client/server용으로의 구조의 우수성- 제품의 안정성 미흡- 3rd Party 지원도구의 부족- 제한된 호환성- Stored Procedure와 Trigger의 결여- Router의 높은 가격- 고객 지원의 미흡DB2- IBM Product Line의 호환성- RDBMS와 Platforms의 안정성- CICS와의 통합사용이 가능- 원격관리의 우수성- Stored Procedure등의 기능 미흡- 제한된 호환성- 3rd Party 지원도구의 부족- 시장이 편중됨(IBM 위주)5. Access사용의 특징 및 장점MS Access는 데이터베이스로서 초보자들도 쉽게 엑세스를 이용하여 수준급 이상의 데이터 베이스를 구성할 수 있는 사용자 인터페이스를 제공하여 쉽게 배울 수 있고, 다 른 것과 연동이 쉬우며, 특히 GUI(Graphical User Interface)로 강력한 인터페이스를 제 공한다.
Access를 배워서 어떻게 활용할 것인가.?Access란 데이터를 간단히 관리 · 조작할 수 있도록 관계 데이터베이스 소프트웨어로써 데이터베이스 파일은 테이블, 쿼리, 폼, 보고서와 같은 데이터베이스 개체로 구성되어 있다.1. Access의 기능여러 개 테이블을 관리하기Access에서는 데이터를 표 형식으로 축적하여 관리한다. 테이블은 Access의 데이터 개체중에서 가장 기본이 되는 것으로, 텍스트 외에 그래픽, 사운드와 같은 데이터를 삽 입할 수 있다... 여러개 테이블을 이용한 회사의 부서별 직원의 입력/삭제.데이터 관계를 조직하기테이블을 여러 개 적성한 후 그것의 관계를 형성함으로써 데이터를 동시에 이용할 수 도 있다. Access에서는 테이블을 관련짓는 것을 관계 라고 한다... 학번을 이용한 대학교 도서관에서의 도서 반납 및 대출필요한 데이터 검색, 추출하기Access에서는 여러 개의 테이블에 축적한 데이터 중에서 필요한 데이터를 검색하여 추출하고 그 글과를 표시할 뿐 아니라 이용할 수도 있다. 단순한 검색과 추출은 필터, 복잡한 검색과 추출의 경우는 데이터베이스 개체의 하나인 쿼리를 작성한다... 입력된 도서 데이터베이스에서의 원하는 도서 검색, 출력데이터를 시각적으로 입력하기카드형 데이터베이스와 같이 관련 데이터를 알기 쉽게 입력할 수 있다. Access에서 는 테이블의 데이터를 바탕으로 폼이라는 데이터베이스 개체를 작성한다. 폼에서 입력 한 데이터는 테이블이나 쿼리에 저장된다. 폼에는 데이터 입력을 간단히 하기 위한 다 양한 기능이 있다... 직원정보에 신상명세서와 함께 사진의 입력.보고서 작성하기데이터베이스를 구축하는 목적은 축적된 데이터를 효과적으로 이용하는 데 있다. Access에서는 보고서라는 데이터베이스 개체를 작성하여 축적되어 있는 데이터를 목적 에 맞게 추출, 계산함으로써 인쇄 출력한다... 거래회사 중에서 A 제품을 판매하는 회사명과 제품 단가, 수, 총액 출력.2. Access프로그램의 다양한 활용 분야성적 관리 업무 데이터베이스3년동안의 과목별 성적(중간고사, 기말고사, 수행평가 과제등)을 입력하고 보고서를 이 용하여 성적표를 출력할 수 있고, 학년이 올라가면 데이터만을 소속반에 보내어 3년동안 파일로 연속된 성적관리를 할 수 있다.사원들에 대한 실적에 따른 수당 지불영업회사에서 영업사원들에게 수당을 지불하는데 실적에 따라 차등을 둔다고 가정한다.이때 수당의 계산은 실적금액, 수금일수, 마진율, 근무기간, 영업비용, 영업목표액을 참조 하여 계산할 것이다.또한 계산의 결과를 저장해두어 다음해의 연봉을 정할 때 참조할 수도 있다.이렇게 계산과정이 번거로운 작업을 액세스로 작성하면 정확한 계산으로 신뢰성과 속도가 높아 효율성을 높일 수가 있다.재고관리액세스 프로그램으로 바코드를 출력-제품에 부착하고 그 제품이 출고될 때 바코드를 읽어 처리함으로 적은 비용으로 정확하고 신속한 입출고 및 재고 처리를 할 수 있다.가계부 (용돈기입장)매일 발생하는 수입 및 지출내역을 정리하여 일정시간 지출량, 수입량을 한 눈에 볼 수 있고, 체계적인 지출 관리를 할 수 있다.조건에 해당하는 자료를 추출하기이때의 자료는 몇 년 간의 축적된 것일 수도 있어 아주 많을 것이다. 조건은 단일조건 이 될 수도 있고 복수조건이 될 수도 있다. 다양한 조건에 해당하는 자료를 찾아내는 작 업을수작업으로 할 때에 비해 액세스로 프로그램 작성하여 처리하면 시간이 아주 많이 절 약된다.고객관리의사의 경우 환자의 이력이나 증상 관리 또는 기타 고객관리(환자도 고객이므로) 등에 엑세스를 많이 사용하고 있다. 또한 변호사나 회계사, 기타 전문 대인적 업무를 보는 사 람들도 나름대로의 분야에서 자신들의 데이터를 관리하는 데 엑세스를 활용할 수 있다.일반기업의 시스템 구축일반 기업에서 시스템을 구축할 경우, 대부분 전통적인 개발 도구로 인식되어 온 비쥬얼 베이직 또는 델파이, 파워빌더 등을 사용하는 것이 상식으로 통하던 때가 있었다. 물론 데이터베이스는 보통 오라클이나 SQL 서버를 사용했다. 반면 액세스는 그동안 간단한 개인용 데이터베이스 정도로만 인식되어 온 것이 사실이다.그러나 액세스 2002 버전의 출시를 기점으로 하여 규모 면에서 상당한 발전을 가져오게 되었다. 그전에도 오라클이나 SQL 서버 등과 연결하여 클라이언트/서버 시스템을 구축 했지만 여러 가지 문제점으로 인해 많이 사용되지는 않았다. 하지만 액세스 2002는 기존 의 문제점을 해결하여, 특히 SQL 서버와의 연결이 쉬워졌고 SQL을 관리할 수 있는 도구 를 지원해 준다.또한 마이크로소프트사가 모든 개발 도구에 지원하는 새로운 데이터 액세스 방식인 ADO(ActiveX Data Object)를 지원하는 등 중규모의 시스템 구축에도 손색이 없는 기능 을 가지고 있다. 액세스 2002 자체를 데이터베이스로 사용할 수도 있으며, SQL 서버를 데이터베이스로 사용하여 진정한 의미의 클라이언트.서버 시스템을 갖출 수도 있다. 액세 스 2002는 시스템 구축 도구로서 손색이 없는 데이터베이스 개발도구라 할 수 있다.웹사이트 및 인트라넷을 위한 전문 데이터베이스액세스의 또다른 용도 중 간과할 수 없는 것이 웹 사이트 구축을 위한 전문 데이터베이스 로서의 역할이다. ASP(Active Server Page)를 사용하는 웹 사이트의 경우 배부분 SQL 서버를 데이터베이스로 사용한다. 그러나 보통의 웹 사이트인 경우에 액세스 2002를 사 용해도 부족함이 없으므로, 실제로 액세스를 웹 사이트의 데이터베이스로 사용하는 경우 가 늘어나고 있다. 일단은 가격이 싸다는 점도 중요한 요인이기는 하지만, 규모의 차이만 있을 뿐 관리 형태나 성능 면에서 다른 데이터베이스에 결코 뒤지지 않기 때문이다. 물 론 대형 포털 사이트가 사용자가 많은 사이트에서는 액세스가 최선일 수는 없는 경우도 있다. 그러나 굳이 대형 데이터베이스를 사용하지 않아도 될 사이트라면 액세스는 훌륭 한 대안일 수 있다. 인트라넷의 경우도 마찬가지이다. 모든 사내 정보의 흐름이 인트라 넷이라는 통로로 흐르고 있고, 모든 사내 시스템을 인트라넷 형태로 전환하고 있는 상태 에서 액세스는 시간과 비용을 줄일 수 있는 경제적인 프로그램 이라 할 수 있다.
도하개발아젠다(Doha Development Agenda)협상1. 의 의세계경제는 작년 말부터 성장세가 둔화되기 시작했는데, 최근에는 미 테러사태의 여파 등으로 세계경기침체의 조짐이 완연하다. 세계경제의 상호의존성이 증대된 최근에는 무역이 경제성장에 미치는 영향이 커졌기 때문에 세계경제의 성장회복을 위해서도 도하개발아젠다협상이 절실하게 필요한 시점이다.또한, 세계경제의 침체에 따라 각 국이 수입규제를 남발하고 보호주의로 회귀할 조짐을 보이고 있어 이러한 추세를 억제하기 위한 세계적 차원의 협력이 요구된다. 지난 1930년대에 주요국들이 경쟁적으로 보호조치를 발동한 것이 결국 세계대공황으로 이어 졌던 역사적 경험은 보호주의의 확산을 막기 위한 도하개발아젠다의 필요성을 일깨워 준다.더욱이, 시애틀각료회의에서 다자간 무역협상 출범이 실패한 반면 FTA등 지역주의는 최근 들어 더욱 만연하고 있기 때문에 이번 마저 도하개발아젠다가 출범하지 못한다면, 다자체제의 신뢰성이 훼손될 것이라는 위기감도 있었다. WTO가 무용지물이 되고 지역협정만 확산된다면 세계경제는 몇 개의 배타적 블록으로 구분될 것이다. 따라서, 도하개발아젠다는 세계무역질서에 예측가능성과안정상을 제고하는데 큰 도움이 될 것이다.2. 배경제 2차 세계대전 이후 50여년간 세계무역의 급속한 성장은 전례 없는 세계경제성장의 원동력이 되었다. 급속한 세계무역의 확대는 GATT(관세와 무역에 관한 일반협장)가 주도한 무역 자유화에 의해 가능하였으며, GATT는 주기적으로 모든 회원국이 참여하는 일련의 다자간 무역협상( 라운드 라고 불림)을 진행하여, 관세를 비롯한 무역장벽을 감축함으로써 자유무역을 촉진하였다.다자간 무역협상은 지금까지 모두 8차례 있었는데, 시장개방을 확대하고 자유로운 무역규범을 확립함으로써 국제무역과 세계경제의 성장에 크게 기여하였다. 특히 1986년에서 1993년까지 진행되었던 우루과이라운드(UR) 협상은 1995년 세계무역기구(WTO)를 출범시켰다.1990년대 후반부터 WTO 회원국들은 UR이후에도 남아있는 무역장벽을 감축하고, 국제경제환경의 변화에 따른 새로운 무역문제를 다루기 위해 또 하나의 무역협상라운드를 시작하는 방안을 논의하였는데, 2002년부터 WTO에서 진행되고 있는 새로운 다자간 무역협상을 DDA(도하개발아젠다) 협상이라고 부른다.WTO 회원국들은 UR협상을 타결하면서 농산물과 서비스분야의 시장개방 내용이 미흡하다고 판단하여 2000년부터 추가적인 자유화 협상을 시작하기로 약속하였다. 그러나 다수국가는 세계무역환경의 변화를 반영할 새로운 무역규범이 필요하므로 다른 분야에서도 추가적인 협상을 시작할 것을 희망하여, 3년반의 논의를 거쳐 2001년 카타르의 수도 도하에서 개최된 제4차 각료회의에서 DDA 협상의 출범을 선언하는 각료선언문을 채택하였다.3. 연혁▶▷ 2001.11월 DDA출범농업, 서비스, 비농산물, 규범, 환경 등 7개 협상그룹 출범2005.1.1일 종료예정▶▷ DDA 중간점검 : 제 5차 각료회의('03.9, 멕시코 칸쿤)농업 및 싱가폴이슈에서 선진국-개도국간 입장차로 칸쿤각료선언문 합의 실패현재 제네바 차원의 협상 Process만 진행▶▷ 일반이사회 결과(12.15-16)4개 이슈(농업, 면화, 비농산물, 싱가폴이슈)등에 대해 논의→ 기존 입장 반복으로 큰 진전은 없었음협상 시작기초 마련 및 3월부터 분야별 협상기구 회의 재개▶▷ 미국 Zoellick(USTR대표)서한 발송 ('04.1.11)WTO 회원국 통상장관에게 서한을 발송하여 협상진전 모색→ 4개 이슈 협의부진 이후 논의 활성화 계기 마련농업, 비농산물, 싱가폴이슈에서 개도국 입장을 반영새로운 제안 제시보다는 기존입장 반복 및 구체성 결여▶▷ EU의 DDA 협상 입장 발표('04. 1. 27)2004년 여러 혼란요소(6월 유럽총선, 11월 미국대선)에도 불구하고 DDA의 실질적인 진전필요각료회의 개선 등 WTO 조직 및 운영방식 개혁 강조4. 논의되고 있는 내용(1) 무역규범규범분야에 대한 협상은 반덤핑과 보조금 협정규정을 명확히 하여 반덤핑 관세나 보조금 상계관세의 남용을 방지하기 위한 것으로- 반덤핑 분야는 무분별한 조사개시 방지, 덤핑마진 결정, 피해의 결정, 재심절차의 투명성 제고 등의,- 보조금 분야는 특정성의 개념, 상계가능보조금의 요건, 허용보조금의 범위, 개도국에 대한 특례, 상계관세절차 등이 주요 쟁점이다.{반덤핑 및 보조금(특정성 등) 개념을 명확히 하고 발동요건과 절차에 대한 엄격한 제한을 통해 우리 수출기업에 가해지고 있는 반덤핑 및 보조금 상계관세 남용 가능성을 최소화하여야 할 것이다.< 협상 과제 >>(2) 공산품 시장접근관세 및 비관세장벽의 삭감 또는 철폐를 위한 협상개시특히 각료선언문에 첨두관세(tariff peaks), 고관세(high tariffs) 및 경사관세(tariff excalation)의 완화문제 명시협상의 초기단계에서 관세인하의 대상 및 정도, 인하방법 등 협상의 틀에 대한 논의가 진행된 후,- 협상중반 이후 산업별, 품목별 구체적 관세인하와 비관세장벽에 대한 협상이 진행될 전망{관세인하 협상에 대비하여 구체적인 산산업별, 품목별 상대국의 관세현황 및 비관세 장벽을 면밀히 점검하고- 우리주유 수출품목에 대한 관세협상안을 마련하여 협상 전략 수립이 필요하다.< 협상 과제 >>(3) 서비스서비스 협상은 건설, 교육, 관광 등 10여개 서비스 분야(우리부 소관 유통, 에너지서비스)에 대한 추가적 시장개방 논의에 관한 것으로- 서비스분야에 대한 시장개방은 시장접근과 내국민 대우에 대한 제한을 완화하고 국내규제의 투명성 보장을 통하여 달성- 서비스 협상은 2002. 6월까지 상대국에 대한 양허요청안을 마련하고, 2003. 3 월까지 최초양허안을 제출하여 진행될 예정{우리부 소관 분야중 경쟁력 있는 유통서비스 분야는 향후 협상을 통하여 외국인 투자유치, 국내기업의 해외진출 계기로 삼고,- 에너지서비스분야는 국내산업의 성숙도를 감안한 자율적 개방계획(전력산업 구조개편안 등)에 따라 순차적으로 시장개방 추진이 필요하다.< 협상 과제 >>(4) 농업농업의 환경보존 측면과 식량안보 등과 같은 비교역적 관심(Non-Trade Concerns)을 고려하되, 시장접근의 실질적 개선, 수출보조의 단계적 감축, 국내보조의 실질적 감축을 목표로 협상- '03.3월까지 협상방식 수립후, 5차 각료회의 이전까지 양허안 제출{농산물 시장개방이 국내 농업이 미치는 부정적인 영향을 최소화하도록 개방의 범위와 속도조절에 노력하면서 국내적으로는 농업구조조정, 민관합동 장,단기 대응전략을 수립하여야 한다.< 협상 과제 >>(5) 환경환경관련 상품의 교역장벽 철폐, MEA(다자간환경협상)과 WTO협정의 관계정립 등 무역과 환경의 상호 보완성을 제고하기 위한 협상개시- 환경관련 상품 및 서비스에 대한 개방 확대방안 논의{환경관련 상품 및 서비스에 대한 개방 등 환경분야 협상 과정에서 국내산업과 무역에 미치는 효과를 분석하고 이를 반영한 협상안을 마련하여야 한다.- 환경보호 측면을 강조하여 국내 환경산업 보호육성 측면이 소홀이 되지 않도록 적극적인 역할 수행이 필요하다.< 협상 과제 >>(6) 분쟁해결양해(DSU)'03.5월 이전 합의를 목표로 패널구성, 제3자 참여, 투명성 제고 등 분쟁해결절차에 관한 일반규정 개정을 위한 협상개시{객관성과 투명성을 보장하는 다자간분쟁해결 제도와 절차 확립이 필요하다.< 협상 과제 >>(7) 무역관련 지적재산관(TRIPs)"포도주 및 증류주의 지리적표시 시스텝"구축을 위한 협상을 마무리 하고, 지리적표시 품목의 확대 검토- 그외 TRIPs 협정과 CBD(생물다양성협약)과의 관계, TRIPs 협정이 신기술 발전을 수용하는 문제 등에 대한 연구 지속{지적지산권의 한정된 지리적표시 분야를 다루고 있어 우리입장에서는 큰 현안사항은 아니다.- 다만 TRIPs협정이 신기술발전을 수용하는 문제 등 새로이 제기되는 이슈에 대해서는 미래의 특허제도 운용방향을 제시한다는 견지에서 국제규범 정립과정에 적극참여해야 할 것이다.< 협상 과제 >>5. 현황(우리나라 최근에 논의되고 있는 내용)(1) 비농산물 시장접근ㅇ 주요 논의사항- 신임 비농산물 의장으로 선임된 아이슬랜드의 요한슨 대사의 협상촉진을 위한 제안에 따라 기존의 전체회의를 자제하고, 이슈별 복수국간 협의 및 양자회의를 위주로 협상이 진행- 이에 따라 7개 이슈에 대한 복수국 협의(전반적 목표, 관세인하공식, 분야별 접 근, 비관세장벽(NTB), 개도국우대(S&D), 협상구조와 요소, 수출개도국)가 이루어 졌으며,- 대표단 차원에서 미국, EC, 인도, 멕시코, 중국과의 양자협의 및 산자부와 일 본 경산성의 공산품 양자협의 등이 이루어짐. 우리나라의 향후 계획ㅇ공식에 대한 다각적 검토- 우리측이 최우선 방안으로 보고있는 Girard 공식에 대한 수정(Ta capping 등)안에 대해 선·개도국 모두 거부하고 있는 상황이긴 하나, 향후 협상의 다양 한 가능성을 고려하여 지속 검토- 이와 함께 선진국이 염두에 두고있는 스위스 공식에 대해서도 수용가능한 계수의 범위 및 개도국에 대한 차별적 계수 부여시 수용가능 범위에 대해 검토할 필요ㅇ 분야별 무세화에 대한 검토- 개도국 스스로 수출관심품목으로 밝힌 섬유·의류, 신발분야에 대한 관세조화 가능성이 높은 만큼 적정한 관세조화 수준 및 구체적 수용불가품목에 대한 선별작업 필요- 각 분야별 미국측 critical mass 개념을 감안하여 우리측의 CM 포함여부 및 입장 등을 검토할 필요·현재 시행중인 무세화 연구용역(KIEP)과 병행하여, 전기·전자, 석유화학, 기계 등 분야별로 산·학·연 대책회의 개최예정(4월 말 이후)
키 생성 · p, q 선택 (p, q는 솟수) p = 10036 41101, q = 10036 41097 · n = p X q n = *************927797 · 정수 d 선택 (gcd( (n),d) = 1, 1<d< (n)) (n) = (p-1)(q-1) = *************645600 (n) = *************645600과 서로소이고 (n)보다 작은 e 선택 (e = 13) de = 1 mod *************645600이고d<*************645600인 d를 결정 k = 1 : *************645600 +1 = *************645601 k = 2 : (*************645600) X 2 +1 = 2014*************01 k = 3 : (*************645600) X 3 +1 = 30218*************1
1. 캐시(Cache)란?컴퓨터가 작동할 때, CPU와 주기억장치인 DRAM 사이에 수백 수억 회의 데이터 주고받기가 이루어진다. 그런데, CPU와 보조를 맞추어 동작해야 하는 DRAM의 동작 속도가 훨씬 느리기 때문에 CPU가 빨리 작동할 수 없게 만든다.{이러한 문제를 해결하기 위해 지역성의 원리를 고려하여 중앙 처리 장치와 주 기억 장치 사이에 SRAM을 설치하고 이곳에 반복적으로 참조될 프로그램 및 데이터의 블록을 옮겨 놓은 후 이곳에서 호출하여 실행시킴으로써 기억 장치 접근 시간을 단축할 수 있도록 만든다. 이것을 캐시(Cache) 메모리 라고 한다.{- CPU는 먼저 읽으려는 워드가 캐시에 있는 지를 검사- 있으면 그 워드가 중앙 처리 장치로 전달됨- 없으면 그 워드가 포함된 한 불록(1∼16 워드로 구성)이 주 기억 장치로부터 캐시로 읽혀지고 동시에 CPU로 전달됨.2. 캐시메모리의 구조 및 동작{< 주기억장치와 캐쉬조직 >>블록(block) : 주기억장치로부터 동시에 인출되는 정보들의 그룹.[예] 주기억장치 용량 = 2n 단어, 블록 = K 단어이면, 블록의 수 = 2n/K 개슬롯(slot) = 라인 : 캐쉬에서 한 블록이 저장되는 장소.태그(tag) : 슬롯에 적재된 블록을 구분해주는 정보.(1) 캐쉬의 크기- 용량이 커질수록 적중률이 커지지만, 비용이 증가한다.- 용량이 커질수록 주소 해독 및 정보 인출을 위한 주변 회로가 더 복잡해지기 때문에 액세스 시간이 다소 더 길어진다.(2) 캐쉬메모리의 성능힛트 율(hit ratio)에 의하여 측정됨힛트(hit) : CPU가 메모리를 참조할 때 캐시에서 이를 찾을 경우미스(miss) : 캐시를 찾기 못하고 주기억 장치에 있을 경우힛트 율(hit ratio){(적중의 수) / (주 기억 장치 접근의 총수)= (적중의 수) / (적중의 수 + 실패의 수)힛트의 수를 CPU에 의한 메모리 참조의 총 수로 나눈 비율프로그램을 수행하여 주어진 시간 동안 힛트와 미스의 수를 셈으로써 실험적으로 측정됨보통 0.9- 전형적인 많은 프로그램에서 주어진 시간동안의 메모리 참조는국한된 영역에서만 이루어지는 경향이 있는 것- 데이타에 대한 메모리 참조도 일부 영역에만 국한되는 경향이 있다.테이블-룩업(table-lookup)절차, 공통 메모리와 배열의 참조 등컴퓨터의 평균 기억장치 접근시간(TS) : TS = H TC + (TC + TM) (1 - H)여기서, TM : 주 기억 장치 접근 시간TC : 캐시 접근 시간H : 적중률(3) 캐쉬 설계상의 중요요소들{캐쉬의 크기1 k ∼ 128 k 워드블록의 크기4 ∼ 8 워드사상함수직접 사상(direct mapping)연관 사상(associative mapping)세트 연관 사상(set associative mapping)교체알고리즘최소 최근 사용(LRU)선입 선출(FIFO)최소 사용 빈도(LFU)랜덤(random)기록 동작동시 기록(write through)후 기록(write back)단일 기록(write once)(4) 인출 방식요구 인출(demand fetch) 방식: 필요한 정보만 인출해 오는 방법선인출(prefetch) 방식: 필요한 정보 외에 앞으로 필요할 것으로 예측되는 정보도 미리 인출하는 방식. 지역성이 높은 경우에 효과가 높다.(5) 캐쉬 설계에 있어서의 공통적인 목표- 캐쉬 적중률의 극대화- 캐쉬 액세스 시간의 최소화- 캐쉬 실패에 따른 지연 시간의 최소화- 주기억장치와 캐쉬간의 데이터 일관성 유지 및 그에 따른 오버헤드의 최소화2. 캐쉬의 사상매핑(mapping) 프로세서- 어떤 주기억장치 블록들이 어느 캐쉬 슬롯을 공유할 것인 지를 결정해 주는 방법- 사상의 세가지 방법직접 사상(Direct mapping)연관 사상(Associative mapping)세트-연관사상(Set Associative mapping)(1) 직접 사상(Direct mapping)주기억장치의 블록들이 지정된 하나의 캐쉬 슬롯(라인)으로만 사상주기억장치 주소 형식{TagLing or slotword태그 필드(t 비트): 태그 번호슬롯(라인2w 개 단어들 중의 하나를 구분주기억장치의 블록 j가 적재될 수 있는 캐쉬 슬롯의 번호 i :i = j mod m단, j : 주기억장치 블록 번호, m : 캐쉬 슬롯의 전체 수1 직접 사상 캐쉬의 조직각 캐쉬 슬롯(라인)은 2t 개의 블록들에 의하여 공유된다.같은 슬롯(라인)을 공유하는 블록들은 서로 다른 태그를 가진다.2동작원리캐쉬로 기억장치 주소가 보내지면, 그 중 s-비트의 라인 번호를 이용, 캐쉬의 라인을 선택.선택된 라인의 태그 비트들을 읽어서 주소의 태그 비트들과 비교.그 두 태그값이 일치하면, 캐쉬 적중 :- 주소의 w 비트들을 이용하여 슬롯내의 단어들 중에서 하나를 인출하여 CPU로 보 낸다.태그값이 일치하지 않는다면, 캐쉬 미스 :- 주소를 주기억장치로 보내어 한 블록을 액세스.- 인출된 블록을 지정된 캐쉬 슬롯에 적재하고, 주소의 태그 비트들을 그 슬롯의 태 그 필드에 기록.- 만약 그 슬롯에 다른 블록이 이미 적재되어 있다면, 그 내용은 지워지고 새로이 인 출된 블록을 적재.장점 : 하드웨어가 간단하고, 구현하는 비용이 적게 든다단점 : 같은 인덱스를 가졌으나 다른 태그를 가진 2개 이상의 워드가 반복하여 접근된 다면 히트율은 떨어질 수 있다.(2) 연관 사상(Associative mapping)어소시어티브 메모리 사용15비트의 주소는 5자리 8진수로 표시대응하는 비트 워드는 4자리 8진수로 표시15비트의 CPU주소는 인자 레지스터에 저장하고, 어소시어티브 메모리는 이 안의 주 소와 동일한 것에 대응하는 12비트의 데이타를 읽어 CPU로 전송매치가 일어나지 않으면 원하는 워드를 주메모리에서 찾아와 주소와 데이타를 캐시 메 모리에 저장캐시가 꽉차 있으면 필요없는 한 쌍의 주소 및 데이타를 알고리즘에 따라 치환기억장치 주소형식 :{Tagword장점 : 새로운 블록이 캐쉬로 적재될 때 슬롯의 선택이 매우 자유롭다.지역성이 높다면, 적중률이 매우 높아진다.단점 : 캐쉬 슬롯들의 태그들을 병렬로 검사하기 위하여 매우 복잡하고 비용이 높은 회로가 필 (s)단어필드 (w)- 캐시의 각 워드는 같은 인덱스 주소 아래서 두개 이상의 메모리 워드 저장 가능- 직접 매핑 단점 보완- 각 데이타 워드는 태그와 함께 저장- 캐시의 한 워드내의 태그 워드 항목들은 한 세트를 이룸- 캐쉬는 v 개의 세트들로 나누어지며, 각 세트들은 k 개의 슬롯들로 구성- 캐쉬 슬롯의 수 m과 주기억장치 블록이 적재될 수 있는 캐쉬 세트 번호 im = v x k i = j mod v단, i : 캐쉬 세트의 번호j : 주기억장치 블록 번호m : 캐쉬 슬롯들의 수- 동작원리기억장치 주소의 세트 비트들을 이용하여 캐쉬 세트들 중의 하나를 선택.주소의 태그 필드 내용과 그 세트내의 태그들을 비교.일치하는 것이 있으면, 캐쉬 적중: 그 라인내의 한 단어를 w 비트에 의해 선택하여 인 출.일치하는 것이 없다면, 캐쉬 미스: 주기억장치를 액세스.3. 교체알고리즘세트-연관 사상에서 주기억장치로부터 새로운 블록이 캐쉬로 적재될 때, 만약 세트내 모 든 슬롯들이 다른 블록들로 채워져 있다면, 그들 중의 하나를 선택하여 새로운 블록으로 교체해야 한다.교체 알고리즘: 캐쉬 적중률을 극대화할 수 있게 교체할 블록 선택을 위한 알고리즘.새로운 불록으로 교체하여야 하는 경우직접 사상 : 새로 불려온 불록이 차지할 수 있는 캐시 불록이 비어 있지 않은 경우연관 사상 : 비어 있는 불록이 없는 경우집합 연관 사상 : 새로운 불록이 사상되어야 할 집합의 모든 요소가 차지되어 있는 경우최소 최근 사용(Least Recently Used: LRU) 알고리즘 : 사용되지 않은 채로 가장 오래 있었던 블록을 교체하는 방식.° 캐시 내에서 사용되지 않은 채로 가장 오래 있었던 불록을 교체하는 것° LRU 불록을 확인하기 위해서 각 캐시 불록에 계수기 설치.° 불록이 참조되면 참조된 불록의 계수기는 0으로 설정되고 나머지 불록들의 계수기 는 1씩 증가.° 계수기 값이 최대인 불록이 언제나 LRU 불록FIFO(First-In-First-Out: FIFO) 알고리즘 : 캐쉬에 적재 들어 올 때마다 그 불록의 식별 번호가 큐에 적재됨.° 큐의 출력은 항상 캐시에 가장 먼저 들어간 불록의 식별 번호.° 라운드 로빈(round-robin)이나 원형 버퍼(circular buffer)로 구현이 용이함.° 특정 상황에서는 불록이 너무 자주 교체되는 단점이 있음.최소 사용 빈도(Least Frequently Used: LFU) 알고리즘 : 참조되었던 횟수가 가장 적은 블록을 교체하는 방식.랜덤 알고리즘(Random) : 대상 불록 중에서 임의로 선택된 불록을 교체하는 것.4. 쓰기 정책(Write Policy)캐쉬의 블록이 변경되었을 때 그 내용을 주기억장치에 갱신하는 시기와 방법을 결정하는 정책.- 캐시 메모리의 write 동작: 2가지 방법에 의해 주기억 장치의 내용 갱신- 종류 : write-through 방식write-back 방식{(1) write-through 방식- write 동작이 이루어질 때마다 캐시 메모리와 주기억장치를 동시에 갱신- 주기억장치는 캐시와 항상 같은 데이타를 가진다- DMA 전송을 갖는 시스템에 매우 중요- 장점 : 캐쉬에 적재된 블록의 내용과 주기억장치에 있는 그 블록의 내용이 항상 같 다.- 단점 : 모든 쓰기 동작이 주기억장치 쓰기를 포함하므로, 쓰기 시간이 길어진다.(2) write-back 방식- write 동작 동안에 캐시의 내용만이 갱신- 그 다음에 여기에 플래그를 표시하여 워드가 캐시로부터 제거될 때 주기억 장치에 복사- 워드가 캐시에 있는 동안 여러번 갱신될 수 있기 때문에 이 방법을 많이 사용- 워드가 캐시에 남아있는 한 주기억 장치로의 복사가 늦어지는 것은 문제가 되지 않 는다- 장점 : 기억장치에 대한 쓰기 동작의 횟수가 최소화되고, 쓰기 시간이 짧아진다.- 단점 : 캐쉬의 내용과 주기억장치의 해당 내용이 서로 다르다→블록을 교체할 때는 캐쉬의 상태를 확인하여 갱신하는 동작이 선행되어야 하 며, 그를 위하여 각 캐쉬 슬롯이 상태 비트를 가지고 있어야 한다.(3) 캐시의 초기값 설정- 캐시는 컴정