KR20020053972A - 에스디엘을 씨로 번역하기 위한 장치 및 그 방법 - Google Patents

에스디엘을 씨로 번역하기 위한 장치 및 그 방법 Download PDF

Info

Publication number
KR20020053972A
KR20020053972A KR1020000082204A KR20000082204A KR20020053972A KR 20020053972 A KR20020053972 A KR 20020053972A KR 1020000082204 A KR1020000082204 A KR 1020000082204A KR 20000082204 A KR20000082204 A KR 20000082204A KR 20020053972 A KR20020053972 A KR 20020053972A
Authority
KR
South Korea
Prior art keywords
information
sdl
stored
storing
data
Prior art date
Application number
KR1020000082204A
Other languages
English (en)
Inventor
권정국
백의현
장종현
이동길
김승호
Original Assignee
오길록
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 오길록, 한국전자통신연구원 filed Critical 오길록
Priority to KR1020000082204A priority Critical patent/KR20020053972A/ko
Publication of KR20020053972A publication Critical patent/KR20020053972A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 에스디엘(SDL)을 C로 번역하기 위한 장치 및 그 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은, 시스템의 명세 및 기술 언어인 에스디엘을 소프트웨어의 구현 언어인 C로 번역하기 위한 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.
3. 발명의 해결방법의 요지
본 발명은, 에스디엘을 C로 번역하기 위한 장치에 있어서, 에스디엘로 작성된 데이터를 입력받아, 상기 입력받은 데이터를 분석하여 필요한 정보를 추출하기 위한 에스디엘 분석 수단; 상기 에스디엘 분석 수단에서 추출된 정보를 저장하기 위한 에스디엘 정보 저장 수단; 상기 에스디엘 정보 저장 수단에 저장된 정보를 분석하여, 각각의 데이터에 대응되는 C 코드를 생성하기 위한 에스디엘-C 대응 수단; 상기 에스디엘-C 대응 수단에서 생성된 정보를 저장하기 위한 대응 정보 저장 수단; 및 상기 대응 정보 저장 수단에 저장된 정보를 이용하여 C 언어로 된 프로그램을 생성하기 위한 C 생성 수단를 포함함.
4. 발명의 중요한 용도
본 발명은 교환기용 시스템 등에 이용됨.

Description

에스디엘을 씨로 번역하기 위한 장치 및 그 방법{The Apparatus and method of translation from SDL to C}
본 발명은 에스디엘(SDL)을 C로 번역하기 위한 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 시스템의 명세 및 기술 언어인 에스디엘을 소프트웨어의 구현 언어인 C로 번역하기 위한 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
대형 교환기용 소프트웨어들은 다른 분야의 소프트웨어에 비해, 개발에 많은 인력이 필요하고 비교적 긴 생명주기를 가지고 있다. 이로 인하여 시스템과 관련된 비용 측면에서 볼 때, 초기의 시스템 개발보다는 소프트웨어의 유지, 보수 및 관리에 더 많은 비용이 투자되고 있다.
따라서, ITU-T에서는 보다 효율적인 시스템의 유지, 보수 및 개발을 위해, 시스템의 설계 및 명세 언어로 에스디엘을 권고하여 시스템을 위한 목적 코드의 개발 전에 목적 시스템에 대한 명세 및 기술을 수행하도록 하고 있다.
이러한 명세는 개발 시의 실제 구현을 위한 것이라기보다는 요구자와 개발자 상호간의 정보 교환을 위한 것으로, 전체 시스템에 대한 분석과 시뮬레이션, 시스템의 유지 및 관리 등에 유용하게 사용될 수 있다.
범용 프로그래밍 언어인 C는 기존의 프로그래밍 언어가 가지는 대부분의 기능을 포함하는 크고 복잡한 언어로, 다양한 응용 분야에 적용할 수 있는 일반적인 기능에 중점을 두고 설계되었다. 따라서, 이러한 C 언어는 구조화된 프로그래밍 및 모듈화된 설계를 쉽게 할 수 있어서 프로그램의 신뢰도가 높고 이해하기가 쉽다.
또한, 효율적이고 강력하며 융통성, 이식성도 매우 좋아, 특정 시스템을 위해 만들어진 C 프로그램을 다른 시스템에서 실행시키기 위해서는, 그 프로그램의 극히 일부만을 수정하거나, 또는, 전혀 수정하지 않아도 되는 등의 여러 가지 장점을 가진다.
그런데, 대형 시스템들은 10년 이상의 오랜 생명 주기와 대규모 개발 및 유지, 보수 인원의 참여로 인하여 설계 문서와 구현 사이의 불일치가 나타나는 경우가 많다. 따라서, 소프트웨어의 개발 당시에, 설계에서 구현까지의 일관성을 유지하고 기능의 추가나 변경, 삭제 등, 설계 수준에서의 부분적인 변화가 의미적 변화 없이 구현에 바로 영향을 미치도록 하기 위해서는 소프트웨어의 명세로부터 실제적인 구현 코드를 생성하는 자동 번역기의 개발이 매우 중요하다.
또한, 최근의 교환기 시스템 개발에 기존의 칠(CHILL)과 같은 언어보다 범용 언어인 C의 사용이 점점 더 활발해지고 있고, 또한, 많은 알고리즘에 관련된 모듈들이 이러한 C로 작성되어 있음을 감안한다면, 에스디엘에서 C로의 번역기의 개발은 필수적이라고 할 수 있다.
종래의 통신용 소프트웨어 개발자들은 교환기용 소프트웨어 등을 개발하는데 있어서, 명세 및 기술 언어인 에스디엘을 이용하여 시스템을 설계하고 이를 바탕으로, 구현을 위한 언어를 별도로 사용하여 소프트웨어를 개발하였다.
그런데 이러한 방식은, 설계와 구현 사이의 일관성이 떨어지고, 설계상의 변화가 구현에 직접적으로 영향을 미치지 못하는 등의 문제점이 있었다.
상기한 바와 같은 문제점을 해결하기 위하여 제안된 본 발명은, 시스템의 명세 및 기술 언어인 에스디엘을 소프트웨어의 구현 언어인 C로 번역하기 위한 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명이 적용되는 하드웨어 시스템의 구성 예시도.
도 2 는 본 발명에 따른 에스디엘을 C로 번역하기 위한 장치의 일실시예 구성도.
도 3 은 본 발명에 따른 에스디엘 분석 과정의 일실시예 흐름도.
도 4 는 본 발명에 따른 에스디엘-C 대응 과정의 일실시예 흐름도.
도 5 는 본 발명에 따른 C 코드 생성 과정의 일실시예 흐름도.
*도면의 주요 부분에 대한 부호의 설명
210 : 에스디엘 분석부 220 : 에스디엘 정보 저장소
230 : 에스디엘-C 대응부 240 : 대응 정보 저장소
250 : C 생성부
상기 목적을 달성하기 위한 본 발명의 장치는, 에스디엘을 C로 번역하기 위한 장치에 있어서, 에스디엘로 작성된 데이터를 입력받아, 상기 입력받은 데이터를 분석하여 필요한 정보를 추출하기 위한 에스디엘 분석 수단; 상기 에스디엘 분석 수단에서 추출된 정보를 저장하기 위한 에스디엘 정보 저장 수단; 상기 에스디엘 정보 저장 수단에 저장된 정보를 분석하여, 각각의 데이터에 대응되는 C 코드를 생성하기 위한 에스디엘-C 대응 수단; 상기 에스디엘-C 대응 수단에서 생성된 정보를 저장하기 위한 대응 정보 저장 수단; 및 상기 대응 정보 저장 수단에 저장된 정보를 이용하여 C 언어로 된 프로그램을 생성하기 위한 C 생성 수단을 포함하여 이루어진 것을 특징으로 한다.
또한, 본 발명의 방법은, 에스디엘을 C로 번역하기 위한 장치에 적용되는 에스디엘을 C로 번역하기 위한 방법에 있어서, 에스디엘 정보를 입력받아, 상기 입력된 정보가 번역에 필요함을 확인하고 저장하는 제 1 단계; 상기 저장된 에스디엘 정보를 입력받아 분석하여, 각각의 에스디엘 정보에 대응되는 C 정보를 저장하는 제 2 단계; 및 상기 저장된 C 정보를 입력받아, 상기 각각의 정보에 대응되는 C 코드를 생성하는 제 3 단계를 포함한다.
또한, 본 발명은, 프로세서를 구비한 에스디엘-C 번역 시스템에, 에스디엘 정보를 입력받아, 상기 입력된 정보가 번역에 필요함을 확인하고 저장하는 제 1 기능; 상기 저장된 에스디엘 정보를 입력받아 분석하여, 각각의 에스디엘 정보에 대응되는 C 정보를 저장하는 제 2 기능; 및 상기 저장된 C 정보를 입력받아, 상기 각각의 정보에 대응되는 C 코드를 생성하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명이 적용되는 하드웨어 시스템의 구성 예시도이다.
즉, 도 1 은 본 발명이 적용되는 하드웨어 시스템의 구성도로서, 에스디엘로 작성된 프로그램을 C 프로그램으로 변환하기 위한 시스템 도구들이 탑재된 메인 메모리(110), 상기 메인 메모리(110)에 탑재된 실행 파일을 실행시키는 중앙 처리 장치(120), 여러 정보들이 저장되는 보조 기억 장치(130), 모든 데이터와 메시지를 입/출력하는 입/출력 장치(140), 상기 각 보드 및 장치들을 제어하는 유닉스 운영체제(150) 및 상기 각 보드 및 장치 사이에 상호 주고받는 메시지나 정보들을 전송해 주는 시스템 버스(160) 등으로 구성된다.
도 2 는 본 발명에 따른 에스디엘을 C로 번역하기 위한 장치의 일실시예 구성도이다.
도 2 에 도시된 바와 같이, 본 발명에 따른 에스디엘을 C로 번역하기 위한 장치는, 입력받은 에스디엘로 작성된 프로그램을 분석하여 필요한 정보를 추출하는 에스디엘 분석부(210), 상기 에스디엘 분석부(210)에서 추출된 정보를 저장하는 에스디엘 정보 저장소(220), 상기 저장된 에스디엘 정보 저장소(220)의 정보를 분석하여 각각에 대응되는 C 코드를 생성하기 위한 에스디엘-C 대응부(230), 상기 에스디엘-C 대응부(230)에서 생성된 정보를 저장하는 대응 정보 저장소(240), 및 상기 대응 정보 저장소(240)의 정보를 바탕으로 C 언어로 된 프로그램을 생성하는 C 생성부(250)를 포함한다.
상기 각 구성 요소들의 상세 기능 및 동작 과정은 다음과 같다.
상기 에스디엘 분석부(210)는 에스디엘로 작성된 데이터를 입력받아, 상기 입력받은 데이터를 분석하여 필요한 정보를 추출한다. 이때, 상기 에스디엘 분석부(210)는 입력이 완료되었는지를 파악하여, 입력 신호가 존재하는 경우에는 번역에 필요한 에스디엘 신호를 추출하여 상기 에스디엘 저장소(220)에 저장하며, 입력이 완료된 경우에는 종료한다.
그러면, 상기 에스디엘-C 대응부(230)는, 상기 에스디엘 정보 저장소(220)에 저장된 정보를 분석하고, 각각의 데이터에 대응되는 C 코드를 생성하여, 상기 대응 정보 저장소(240)에 저장하며, 상기 에스디엘 정보 저장소(220)에 저장된 모든 정보에 대한 분석이 완료되면 종료한다.
그리고, 상기 C 생성부(250)는, 상기 대응 정보 저장소(240)에 저장된 정보를 이용하여 C 언어로 된 프로그램을 생성함으로써, 모든 번역의 과정이 종료한다.
도 3 은 본 발명에 따른 에스디엘 분석 과정의 일실시예 흐름도이다.
도 3 에 도시된 바와 같이, 본 발명에 따른 에스디엘을 C로 번역하기 위한 장치에 적용되는 에스디엘 분석부(도 2 의 210)의 동작 과정은 다음과 같다.
먼저, 입력받은 에스디엘 정보를 끝까지 탐색하여(310), 번역에 필요한 각각의 정보를 분석한다(320). 다음, 상기 분석된 정보가 번역에 필요한 정보인지 판단하여(320) 에스디엘 정보 저장소(도 2 의 220)에 저장한다(330). 상기 저장된 정보들은 에스디엘-C 대응부(도 2 의 230)에 의해 사용되어 진다.
도 4 는 본 발명에 따른 에스디엘-C 대응 과정의 일실시예 흐름도이다.
도 4 에 도시된 바와 같이, 본 발명에 따른 에스디엘을 C로 번역하기 위한 장치에 적용되는 에스디엘-C 대응부(도 2 의 230)의 동작 과정은 다음과 같다.
먼저, 입력받은 정보를 끝까지 탐색하여(410) 각각의 에스디엘 정보에 대응되는 C 코드를 생성하기 위한 정보를 대응 정보 저장소(도 2 의 240)에 저장한다(420). 상기 저장된 정보들은 C 생성부에 의해 사용되어 진다.
도 5 는 본 발명에 따른 C 코드 생성 과정의 일실시예 흐름도이다.
도 5 에 도시된 바와 같이, 본 발명에 따른 에스디엘을 C로 번역하기 위한 장치에 적용되는 C 생성부(도 2 의 250)의 동작 과정은, 입력받은 상기 대응 정보를 끝까지 탐색하여(510) 각각의 정보에 해당되는 C-코드를 모두 생성함으로써(502), 종료된다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 한정되는 것이 아니다.
상기한 바와 같은 본 발명은, 명세 및 기술 언어인 에스디엘로부터 구현 언어인 C를 생성할 수 있으므로, 명세 및 설계에서 구현까지의 일관성을 유지할 수 있고, 또한, 설계 수준에서의 기능의 추가나 변경, 삭제 등을 의미적 변화 없이 구현에 바로 적용되도록 하는 것이 가능해짐에 따라, 개발이 보다 빨라지고 비용을 절감할 수 있어, 궁극적으로 생산성을 향상시킬 수 있는 효과가 있다.

Claims (3)

  1. 에스디엘(SDL)을 C로 번역하기 위한 장치에 있어서,
    에스디엘로 작성된 데이터를 입력받아, 상기 입력받은 데이터를 분석하여 필요한 정보를 추출하기 위한 에스디엘 분석 수단;
    상기 에스디엘 분석 수단에서 추출된 정보를 저장하기 위한 에스디엘 정보 저장 수단;
    상기 에스디엘 정보 저장 수단에 저장된 정보를 분석하여, 각각의 데이터에 대응되는 C 코드를 생성하기 위한 에스디엘-C 대응 수단;
    상기 에스디엘-C 대응 수단에서 생성된 정보를 저장하기 위한 대응 정보 저장 수단; 및
    상기 대응 정보 저장 수단에 저장된 정보를 이용하여 C 언어로 된 프로그램을 생성하기 위한 C 생성 수단
    을 포함하는 에스디엘을 C로 번역하기 위한 장치.
  2. 에스디엘을 C로 번역하기 위한 장치에 적용되는 에스디엘을 C로 번역하기 위한 방법에 있어서,
    에스디엘 정보를 입력받아, 상기 입력된 정보가 번역에 필요함을 확인하고 저장하는 제 1 단계;
    상기 저장된 에스디엘 정보를 입력받아 분석하여, 각각의 에스디엘 정보에 대응되는 C 정보를 저장하는 제 2 단계; 및
    상기 저장된 C 정보를 입력받아, 상기 각각의 정보에 대응되는 C 코드를 생성하는 제 3 단계
    를 포함하는 에스디엘을 C로 번역하기 위한 방법.
  3. 프로세서를 구비한 에스디엘-C 번역 시스템에,
    에스디엘 정보를 입력받아, 상기 입력된 정보가 번역에 필요함을 확인하고 저장하는 제 1 기능;
    상기 저장된 에스디엘 정보를 입력받아 분석하여, 각각의 에스디엘 정보에 대응되는 C 정보를 저장하는 제 2 기능; 및
    상기 저장된 C 정보를 입력받아, 상기 각각의 정보에 대응되는 C 코드를 생성하는 제 3 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020000082204A 2000-12-26 2000-12-26 에스디엘을 씨로 번역하기 위한 장치 및 그 방법 KR20020053972A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000082204A KR20020053972A (ko) 2000-12-26 2000-12-26 에스디엘을 씨로 번역하기 위한 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000082204A KR20020053972A (ko) 2000-12-26 2000-12-26 에스디엘을 씨로 번역하기 위한 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR20020053972A true KR20020053972A (ko) 2002-07-06

Family

ID=27686147

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000082204A KR20020053972A (ko) 2000-12-26 2000-12-26 에스디엘을 씨로 번역하기 위한 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR20020053972A (ko)

Similar Documents

Publication Publication Date Title
US7571427B2 (en) Methods for comparing versions of a program
US5101491A (en) System means for synthesizing, generating and checking software for a computer
JPS6375835A (ja) 目的コ−ド、プログラム・リスト及び設計文書を生成する装置
CN112416788B (zh) 一种分层规范的Web应用UI自动化测试方法
CN115509514B (zh) 一种前端数据模拟方法、装置、设备及介质
KR20080038306A (ko) 널가능과 후 바인딩
CN114356964A (zh) 数据血缘构建方法、装置、存储介质及电子设备
US20030115571A1 (en) Construction of a software application from a plurality of programming languages
Pirapuraj et al. Analyzing source code identifiers for code reuse using NLP techniques and WordNet
CN112270176B (zh) 深度学习框架中模式转换的方法、装置和计算机存储介质
CN115640279A (zh) 一种数据血缘关系的构建方法和装置
JP4319706B2 (ja) プログラム開発支援ツール
KR20020053972A (ko) 에스디엘을 씨로 번역하기 위한 장치 및 그 방법
GB2420638A (en) Method of substituting code fragments in Internal Representation
JP3328056B2 (ja) 構文解析木からの情報抽出装置
Sunitha Compiler construction
JPH11154093A (ja) プログラムコンパイラ及びコンパイラ用プログラムを記録した記録媒体
CN111651773B (zh) 一种二进制安全漏洞自动化挖掘方法
WO2024108986A1 (zh) 一种通信网络业务处理方法和装置
KR101099491B1 (ko) 소모전력 분석방법
JP2002132502A (ja) 言語機能解釈による分散オブジェクト自動生成システム及び方法
JP3003459B2 (ja) プログラム作成支援装置
Rus et al. TICS: A component based language processing environment
JP4371000B2 (ja) Idlコンパイル装置、idlコンパイル方法及びidlコンパイラ
CN117971236A (zh) 基于词法和语法分析的算子解析方法、装置、设备及介质

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination