KR20030025180A - 애플리케이션 사이의 코드 분리를 증가시키는 시스템 및방법 - Google Patents
애플리케이션 사이의 코드 분리를 증가시키는 시스템 및방법 Download PDFInfo
- Publication number
- KR20030025180A KR20030025180A KR1020020054795A KR20020054795A KR20030025180A KR 20030025180 A KR20030025180 A KR 20030025180A KR 1020020054795 A KR1020020054795 A KR 1020020054795A KR 20020054795 A KR20020054795 A KR 20020054795A KR 20030025180 A KR20030025180 A KR 20030025180A
- Authority
- KR
- South Korea
- Prior art keywords
- baseband
- applications
- application
- code
- dedicated
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
- G06F12/1441—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Executing Machine-Instructions (AREA)
Abstract
베이스밴드 및 논-베이스밴드 애플리케이션 모두를 구현하는 단일 무선 시스템(10)이 보호된 코드의 부주의하거나 고의적인 변경을 안전하게 방지하는 방식으로 제공될 수 있다. 예를 들어, 공용 시스템 및 공용 기억장치에 있어서 베이스밴드 프로세싱 코드가 논-베이스밴드 애플리케이션에 의해 겹쳐쓰기될 수 있는 가능성이 존재한다. 특정 어드레스를 인식하고 베이스밴드 또는 논-베이스밴드 애플리케이션에 적합한 특정 전용 기억 영역에만 코드 액세스가 루팅되도록 보장하는 어드레스 비교 레지스터(20)를 제공함으로써, 부주의로 또는 고의로 겹쳐쓰기하는 일이 감소되거나 제거될 수 있다.
Description
본 발명은 일반적으로 무선 디바이스에 관한 것이고 보다 상세하게는 무선 및 논-무선 애플리케이션 모두를 처리하는 디바이스에 관한 것이다.
무선 송수신기는 프로세서에 기초한 시스템의 네트워크내의 네트워크 통신은 물론 셀룰러 전화 통신용으로 사용될 수 있다. 일반적으로 무선 시스템은 무선 애플리케이션을 실행하는 베이스밴드 프로세싱 모듈을 포함한다. 또한, 무선 통신에 직접 관련되지 있지 않은 애플리케이션을 실행하는 종래 프로세싱 기능이 사용될 수 있다.
하나의 애플리케이션이 또 다른 애플리케이션에 대해 중요한 명령을 겹쳐쓰기할 수 있기 때문에 무선 시스템에서 문제가 발생한다. 예를 들어, 종래 논-베이스밴드 애플리케이션은 중요한 베이스밴드 코드를 겹쳐쓰기할 수 있고 그 반대도 일어날 수 있다. 이러한 겹쳐쓰기는 침입자에 의한 부주의한 코딩 에러 또는 고의의 액션의 결과일 수 있다.
결과적으로, 종래 애플리케이션에 관한 프로세서 및 무선 애플리케이션에 관한 프로세서 사이의 불편한 결합을 용이하게 하도록 곤란한 조화가 구현되어야 한다. 임의의 경우에, 특정 소프트웨어가 사용될 수 있다. 다른 경우에, 완전 독립 시스템에 매우 제한적인 인터-서브시스템 통신이 제공될 수 있다. 또 다른 대안으로, 별개의 기억장치가 별개의 서브시스템에 대해 사용될 수 있다. 이러한 모든 접근은 임의의 경우에 성능을 저하시키고 비용을 증가시키는 효과를 가져올 수 있다.
따라서, 단일 무선 디바이스에서 별개의 프로세싱 기능의 본질적으로 다른 필요를 처리하는 방법이 필요하게 되었다.
도 1은 본 발명의 일 실시예의 개략도; 및
도 2는 도 1에 도시된 실시예의 또 다른 개략도.
도 1에서, 무선 디바이스(10)는 프로세서(12)를 포함할 수 있다. 이 프로세서(12)는 다양한 기능 유닛으로 버스(14)를 통해서 통신할 수 있다. 임의의 실시예에서, 이러한 유닛은 아날로그 디지털(A/D) 컨버터(22), 디지털 아날로그(D/A) 컨버터(24), 코더/디코더(CODEC; 26), 디지털 신호 프로세서(DSP; 28), 조인트 테스트 액션 그룹(전기전자학회(IEEE) 표준 1149.1 - 1990 IEEE Inc., New York, NY(10117))(JTAG) 프로세서(34) 및 범용 입출력(GP I/O) 디바이스(36)를 포함할 수 있다. 또한, 버스(14)는 변조기(30) 및 복조기(32)와 통신할 수 있다.
상술된 기능 유닛은 또한 메모리 컨트롤러(16)에 연결될 수 있다. 또한, 버스(38)는 프로세서(12)와 메모리 컨트롤러(16) 사이의 통신을 용이하게 하기 위해 제공될 수 있다. 메모리 컨트롤러(16)는 기억장치 또는 메모리(18)로의 액세스를 제어할 수 있다.
일반적으로, 디지털 신호 프로세서(28)는 신호 처리를 위해 사용될 수 있다. 프로세서(12)는 베이스밴드 애플리케이션은 물론 논-베이스밴드 애플리케이션을 실행할 수 있다. 임의의 서브시스템에 대한 애플리케이션은 일 실시예에서 메모리(18)내에 저장될 수 있다.
메모리 컨트롤러(16)는 어드레스 비교 레지스터(20)를 포함할 수 있다. 이 레지스터(20)는 특정 판독 또는 기록 명령의 어드레스 범위를 결정하기 위해 사용될 수 있다. 일단 명령의 어드레스 범위가 검출되면, 레지스터(20)는 하나의 기능과 관련된 어드레스를 갖는 명령이 또 다른 기능과 관련된 애플리케이션에 의해 고의 또는 부주의로 겹쳐쓰기되는 것을 방지할 수 있다.
도 2에서, 프로세서(12)와 어드레스 비교 레지스터(20) 사이의 관계가 더 상세하게 나타나 있다. 어드레스 비교 레지스터(20)는 어드레스 버스(38)에 의해 액세스될 수 있다. 어드레스 비교 레지스터(20)는 특정 명령에 의해 액세스되기 위해 요구되는 메모리(18)의 어드레스 범위를 조사한다. 베이스밴드 프로세싱 애플리케이션의 메모리 어드레스 범위내에 있는 코드 페치는 종래 프로세싱 애플리케이션의 어드레스 범위내에 있는 대신 그 범위 밖에 있는 코드 페치와 같이 인식될 수 있다. 어드레스 비교 레지스터(20)는 베이스밴드 프로세싱에 대한 베이스밴드 애플리케이션 스페이스내에 있는 메모리 로케이션으로의 판독 및 기록 액세스를 허용한다. 또한 레지스터(20)는 베이스밴드 프로세싱에 대하여 정의된 스페이스 외부로의 베이스밴드 프로세싱에 대한 기록 액세스를 거부한다.
논-베이스밴드 또는 종래의 프로세싱 애플리케이션에 대하여, 애플리케이션 스페이스에서 코드를 실행할 때 상태는 반전된다. 애플리케이션 스페이스에서, 레지스터(20)는 애플리케이션이 애플리케이션 메모리 스페이스내에 데이터를 판독 및 기록할 수 있도록 한다. 그러나, 레지스터(20)는 베이스밴드 메모리 스페이스로의 기록을 방지한다.
임의의 실시예에서, 메모리(18)는 물리적으로 구분화되거나 분리될 필요가 없다. 따라서, 메모리(18)는 무제한의 레지스터(20) 없이 모든 애플리케이션에 대해 판독 및 기록될 수 있다.
어드레스 비교 레지스터(20)는 각각의 어드레스를 해독하여 그 어드레스를 부트 이네이블 경로(40), 베이스밴드 이네이블 경로(42) 또는 애플리케이션 이네이블 경로(44)에 전용으로 할당한다. 각각의 이네이블 경로(40,42,또는 44)는 부트 및 기밀 부호 스페이스(46), 베이스밴드 프로세싱 스페이스(48) 및 애플리케이션 스페이스(50)와 같은 상응하는 어드레스 스페이스에 연결된다.
메모리(18)가 매우 이산적인 영역으로 분할되어 있는 것으로 도시되어 있지만, 당업자는 임의의 특정 기능에 적용되는 어드레스 스페이스가 동적으로 할당될 수 있다는 것을 이해할 것이다. 따라서, 특정 기능에 전용인 영역은 다른 기능에 전용인 다른 영역내에 물리적으로 분산될 수 있다. 그러나, 특정 기능에 전용인전체 코드 스페이스가 알려져 있고 어드레스 비교 레지스터(20)에 의해 적용가능하다. 임의의 실시예에서, 메모리(18)는 단일 집적 회로일 수 있고 또는 다른 디바이스내에 집적될 수 있다.
결과적으로, 임의의 실시예에서, 논-베이스밴드 애플리케이션이 베이스밴드 애플리케이션의 데이터를 겹쳐쓰기할 확률은 감소되거나 제거된다. 이것은 임의의 실시예에서 분리 메모리를 포함하는 분리 베이스밴드 및 종래 프로세싱 시스템에 대한 필요를 제거한다. 결과적으로, 임의의 실시예에서, 비용이 더 잘 조절될 수 있고 오퍼레이팅 성능이 향상될 수 있다.
소프트웨어에 기초한 시스템과 비교할 때, 하드웨어 레지스터(20)를 사용하면 해커의 공격을 방지할 수 있다. 프로그래머블 기억 관리 장치(MMUs)를 사용하면 해커가 액세스 권리 및 특권을 바꾸도록 할 수 있다. 보호하기로 의도된 코드는 사실상 공격에 약한 상태로 남게 된다. 하드웨어에 의해 강제 실행된 코드 분리 액세스 권리 및 특권에 의해, 액세스 권리 및 특권은 침입자에 의해 고의로 수정되거나 코딩 에러의 결과로서 부주의하게 변경될 수 없게 된다. 결과적으로, 베이스밴드 프로세싱 애플리케이션과 같은 중요하고 매우 민감한 애플리케이션은 그들의 성능에 악영향을 줄 수 있는 임의의 수정으로부터 보호될 수 있다.
본 발명이 제한된 수의 실시예에 관하여 설명되었지만, 당업자는 그로부터의 다양한 수정 및 변경을 이해할 것이다. 첨부된 청구항은 그러한 모든 수정 및 변경을 본 발명의 정신 및 범위를 벗어남 없이 포함하도록 의도되었다.
Claims (20)
- 프로세서;코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지를 결정하기 위해 상기 코드 페치를 분석하도록 상기 프로세서에 연결된 어드레스 비교 레지스터; 및베이스밴드 및 논-베이스밴드 애플리케이션에 전용인 기억 영역을 갖는 상기 레지스터에 연결된 기억장치;를 포함하는 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 상기 레지스터는 베이스밴드 애플리케이션에 전용인 상기 기억 영역으로부터 논-베이스밴드 애플리케이션에 관한 코드 페치를 차단하는 것을 특징으로 하는 시스템.
- 제 2 항에 있어서, 상기 기억장치는 부트 및 기밀 부호에 대한 영역, 베이스밴드 애플리케이션에 대한 영역 및 논-베이스밴드 애플리케이션에 대한 영역을 포함하는 것을 특징으로 하는 시스템.
- 제 3 항에 있어서, 상기 어드레스 비교 레지스터는 베이스밴드 애플리케이션에 전용인 기억 영역내에 논-베이스밴드 애플리케이션에 관한 기록이 발생하는 것을 방지하는 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 상기 시스템은 무선 전화기인 것을 특징으로 하는 시스템.
- 제 1 항에 있어서, 상기 기억장치는 베이스밴드 및 논-베이스밴드 애플리케이션 기억 영역 모두를 갖는 집적회로를 포함하는 것을 특징으로 하는 시스템.
- 코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지를 결정하기 위해 상기 코드 페치를 분석하는 단계; 및상기 코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지에 기초하여 상기 기억장치의 전용 영역으로부터 상기 코드 페치를 차단하는 단계;를 포함하는 것을 특징으로 하는 방법.
- 제 7 항에 있어서, 코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지를 결정하기 위해 상기 코드 페치의 어드레스를 분석하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 8 항에 있어서, 논-베이스밴드 애플리케이션에 관한 코드 페치를 베이스밴드 애플리케이션에 전용인 기억 영역으로부터 차단하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 9 항에 있어서, 부트 및 기밀 부호에 관한 것이 아닌 코드 페치를 부트 및 기밀 부호에 전용인 기억 영역으로부터 차단하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 8 항에 있어서, 베이스밴드 애플리케이션에 관한 코드 페치를 논-베이스밴드 애플리케이션에 전용인 기억 영역으로부터 차단하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 11 항에 있어서, 논-베이스밴드 애플리케이션에 관한 기록이 베이스밴드 애플리케이션에 전용인 기억 영역내에 발생하는 것을 방지하기 위해 어드레스 비교 레지스터를 사용하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 7 항에 있어서, 코드 페치의 어드레스를 베이스밴드 애플리케이션에 전용인 어드레스의 세트에 비교하는 단계 및 상기 비교에 기초하여 베이스밴드 애플리케이션 기억 영역으로의 액세스를 제어하는 단계를 포함하는 것을 특징으로 하는 방법.
- 프로세서에 기초한 시스템이코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지를결정하기 위해 상기 코드 페치를 분석하고,상기 코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지에 기초하여 상기 기억장치의 전용 영역으로부터 상기 코드 페치를 차단할 수 있도록 하는 명령을 저장하는 매체를 포함하는 것을 특징으로 하는 아티클.
- 제 14 항에 있어서, 상기 코드 페치가 베이스밴드 또는 논-베이스밴드 애플리케이션에 관한 것인지를 결정하기 위해 상기 프로세서에 기초한 시스템이 상기 코드 페치의 어드레스를 분석할 수 있도록 하는 명령을 더 저장하는 것을 특징으로 하는 아티클.
- 제 15 항에 있어서, 상기 프로세서에 기초한 시스템이 논-베이스밴드 애플리케이션에 관한 코드 페치를 베이스밴드 애플리케이션에 전용인 기억 영역으로부터 차단할 수 있도록 하는 명령을 더 저장하는 것을 특징으로 하는 아티클.
- 제 16 항에 있어서, 상기 프로세서에 기초한 시스템이 부트 및 기밀 부호에 관한 것이 아닌 코드 페치를 부트 및 기밀 부호에 전용인 기억 영역으로부터 차단할 수 있도록 하는 명령을 더 저장하는 것을 특징으로 하는 아티클.
- 제 15 항에 있어서, 상기 프로세서에 기초한 시스템이 베이스밴드 애플리케이션에 관한 것이 아닌 코드 페치를 베이스밴드 애플리케이션에 할당된 기억 영역으로부터 차단할 수 있도록 하는 명령을 더 저장하는 것을 특징으로 하는 아티클.
- 제 18 항에 있어서, 논-베이스밴드 애플리케이션에 관한 기록이 베이스밴드 애플리케이션에 전용인 기억 영역내에 발생하는 것을 방지하기 위해 상기 프로세서에 기초한 시스템이 어드레스 비교 레지스터를 사용할 수 있도록 하는 명령을 더 저장하는 것을 특징으로 하는 아티클.
- 제 14 항에 있어서, 상기 프로세서에 기초한 시스템이 코드 페치의 어드레스를 베이스밴드 애플리케이션에 전용인 어드레스의 세트와 비교할 수 있도록 하고 상기 비교에 기초하여 베이스밴드 애플리케이션 기억 영역으로의 액세스를 제어할 수 있도록 하는 명령을 더 저장하는 것을 특징으로 하는 아티클.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/956,209 US7290104B2 (en) | 2001-09-19 | 2001-09-19 | Increasing code separation between applications |
US09/956,209 | 2001-09-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030025180A true KR20030025180A (ko) | 2003-03-28 |
KR100484348B1 KR100484348B1 (ko) | 2005-04-20 |
Family
ID=25497914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-0054795A KR100484348B1 (ko) | 2001-09-19 | 2002-09-11 | 애플리케이션 사이의 코드 분리를 증가시키는 시스템 및방법 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7290104B2 (ko) |
EP (1) | EP1428128A1 (ko) |
JP (1) | JP2003177966A (ko) |
KR (1) | KR100484348B1 (ko) |
CN (1) | CN100559733C (ko) |
SG (1) | SG111960A1 (ko) |
TW (1) | TWI221070B (ko) |
WO (1) | WO2003025759A1 (ko) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2683357A1 (fr) | 1991-10-30 | 1993-05-07 | Philips Composants | Microcircuit pour carte a puce a memoire programmable protegee. |
JPH05265864A (ja) | 1992-03-17 | 1993-10-15 | Fujitsu Ltd | メモリ管理回路及びメモリ管理回路付きのプロセッサユニット |
CA2095647A1 (en) | 1992-05-28 | 1993-11-30 | John Ratzel | Integrated control and signal processing in a cellular telephone |
US6314501B1 (en) * | 1998-07-23 | 2001-11-06 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
US6341338B1 (en) * | 1999-02-04 | 2002-01-22 | Sun Microsystems, Inc. | Protocol for coordinating the distribution of shared memory |
ATE429677T1 (de) | 2000-02-16 | 2009-05-15 | Broadcom Corp | Bluetooth-basisbandlösung mit reduzierten prozessoranforderungen und integrierter host- steuerung |
-
2001
- 2001-09-19 US US09/956,209 patent/US7290104B2/en not_active Expired - Fee Related
-
2002
- 2002-08-15 TW TW091118449A patent/TWI221070B/zh not_active IP Right Cessation
- 2002-08-15 SG SG200204926A patent/SG111960A1/en unknown
- 2002-08-16 WO PCT/US2002/026079 patent/WO2003025759A1/en not_active Application Discontinuation
- 2002-08-16 EP EP02770403A patent/EP1428128A1/en not_active Withdrawn
- 2002-09-11 KR KR10-2002-0054795A patent/KR100484348B1/ko not_active IP Right Cessation
- 2002-09-13 JP JP2002268089A patent/JP2003177966A/ja active Pending
- 2002-09-19 CN CNB021428573A patent/CN100559733C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR100484348B1 (ko) | 2005-04-20 |
US7290104B2 (en) | 2007-10-30 |
CN1405990A (zh) | 2003-03-26 |
US20030054797A1 (en) | 2003-03-20 |
EP1428128A1 (en) | 2004-06-16 |
SG111960A1 (en) | 2005-06-29 |
JP2003177966A (ja) | 2003-06-27 |
CN100559733C (zh) | 2009-11-11 |
TWI221070B (en) | 2004-09-11 |
WO2003025759A1 (en) | 2003-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7401358B1 (en) | Method of controlling access to control registers of a microprocessor | |
Schrammel et al. | Jenny: Securing Syscalls for {PKU-based} Memory Isolation Systems | |
JP4989543B2 (ja) | メモリドメインを基にしたデータ処理システム内のセキュリティ制御 | |
US7043616B1 (en) | Method of controlling access to model specific registers of a microprocessor | |
JP4759059B2 (ja) | メモリページをプログラムに対応付けるページカラーリング | |
US5469556A (en) | Resource access security system for controlling access to resources of a data processing system | |
US8683115B2 (en) | Programmable mapping of external requestors to privilege classes for access protection | |
US8682639B2 (en) | Dedicated memory window for emulation address | |
US6282657B1 (en) | Kernel mode protection | |
US7130977B1 (en) | Controlling access to a control register of a microprocessor | |
US12079197B2 (en) | Systems and methods for updating metadata | |
EP3702923A1 (en) | Memory protection | |
US9158710B2 (en) | Page coloring with color inheritance for memory pages | |
WO2005116842A1 (en) | Digital signal controller secure memory partitioning | |
US7966467B1 (en) | Secure memory access system and method | |
US7082507B1 (en) | Method of controlling access to an address translation data structure of a computer system | |
JP2005509946A (ja) | メモリ管理システム及び線形アドレスに基づいたメモリアクセスセキュリティ付与方法 | |
US20050223225A1 (en) | Switching between protected mode environments utilizing virtual machine functionality | |
KR20030092264A (ko) | 강화된 보안 기능을 갖춘 스마트 카드 및 그것의 보안정보 보호 방법 | |
GB2356469A (en) | Portable data carrier memory management system and method | |
US20060143411A1 (en) | Techniques to manage partition physical memory | |
KR100484348B1 (ko) | 애플리케이션 사이의 코드 분리를 증가시키는 시스템 및방법 | |
Jungwirth et al. | OS Friendly Microprocessor Architecture | |
Nicholas et al. | Hardware secure execution and simulation model correlation using IFT on RISC-V | |
KR19980080255A (ko) | 무관한 기입으로부터 메모리를 보호하는 메모리 어드레스 관리 회로 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment | ||
FPAY | Annual fee payment | ||
LAPS | Lapse due to unpaid annual fee |