• 제목/요약/키워드: C# programming language

검색결과 324건 처리시간 0.024초

Rust와 C/C++간 안전한 상호작용에 관한 연구의 맹점과 개선 모델 연구 (Limitations and Future Work Suggetion on Safe Interaction Model between Rust and C/C++)

  • 노태현;이호준
    • 정보보호학회논문지
    • /
    • 제33권2호
    • /
    • pp.345-351
    • /
    • 2023
  • 소프트웨어 개발이 가속화되고 프로그램들이 기하급수적으로 복잡해짐에 따라 취약점을 줄이고, 관리하는 비용도 같이 증가하였다. 이러한 흐름에서, 기존의 C/C++ 와 같이 비교적 취약점을 내포하기 쉬운 언어를 대체하고 소프트웨어의 안정성을 높이기 위해서 제시된 것이 바로 Memory Safety를 보장하는 Rust 프로그래밍 언어이다. 하지만, 구식 언어들과의 호환성 및 개발의 편리함을 높이기 위해 C/C++로 작성된 라이브러리를 Rust에서도 사용할 수 있도록 지원하고 있는데, 이러한 다중 언어 환경에서는 Rust 또한 안전하지 않다. C/C++에서 발생한 메모리 오염이 Rust 내에서 Null-pointer 역참조, Use-After-Free 및 Buffer-overflow 문제 등을 발생시킬 수 있는 원인이 된다. 이를 해결하기 위해 여러 Rust-C/C++ 격리 연구가 진행되었으나, 아직 기초 단계이다. 본 논문에서는 선행 연구들을 분석하여 공통적으로 간과된 맹점들을 실제 코드 분석과 함께 소개하고, 이를 바탕으로 Rust와 C/C++간의 안전한 상호작용 모델 연구의 올바른 방향을 제시한다.

Computational Thinking 교육에서 나타난 컴퓨터 비전공 학습자들의 어려움 분석 (Analysis of Non-Computer Majors' Difficulties in Computational Thinking Education)

  • 김수환
    • 컴퓨터교육학회논문지
    • /
    • 제18권3호
    • /
    • pp.49-57
    • /
    • 2015
  • 본 연구의 목적은 Computational Thinking(CT)을 모든 대학생들에게 가르치기 위한 기초연구로 컴퓨터 비전공 초보학습자들이 CT 교육 초기에 겪는 어려움을 조사, 분석하여 시사점을 제시하는 것이다. 최근 국내외적으로 CT를 기반으로 한 융합형 인재 양성의 중요성이 대두되면서 국내 대학에서도 CT 관련 강좌를 필수교양으로 채택하고 있다. 본 연구에서는 CT 교육의 도구로 스크래치를 활용하여 서울 소재 C대학에서 2014년 1, 2학기 동안 교양강좌를 진행하고 각 수업내용에서 비전공 학습자들이 어떤 부분을 어려워하는지에 대해 조사, 분석하였다. 연구결과 CT 학습과정에서 비전공 초보학습자들은 변수, 리스트의 개념을 가장 어려워하며, 아이디어를 생각하고 구현하는 과정, 어떤 명령어를 선택해야 하는지에 대한 고민 순으로 어려워하는 것으로 나타났다. 학습에 대한 재미와 흥미는 self-프로그래밍 능력과 self-CT 역량에 유의미한 상관관계가 있는 것으로 나타나 학습자의 어려움을 감소시키는 요소로 활용할 수 있다. 또한, 스크래치와 같이 쉽고 직관적인 교육용프로그래밍 언어의 경우에도 명령어의 사용과 응용에 대한 적절한 학습 시간 제공을 고려하는 것이 필요하다는 시사점을 도출하였다.

PDA기반 인체동작 무선계측 (Wireless Measurement of Human Motion Based on PDA)

  • 이명호;김남진;이훈재;진계환;이삼열;이준행;이상복;이태수
    • 한국방사선학회논문지
    • /
    • 제1권1호
    • /
    • pp.39-44
    • /
    • 2007
  • 본 연구에서는 환자들의 일상생활 동안 움직임 이상을 관찰하기 위한 인체동작 무선계측 기술을 개발하였다. 기술개발에 사용한 도구는 버클리대학에서 개발한 MICA, TinyOS, nesC를 이용하여 무선신호 감지, 소프트웨어 플랫폼, 그리고 임베디드 프로그래밍을 위한 도구로 사용하였다. 실험을 위해 개발된 장비를 인체의 가슴부위에 부착하고 움직임 동작인 앉기, 서기, 눕기 데이터를 획득하여 PDA로 무선전송하여 저장하고 처리하여 그래프로 보여준다. 보여진 결과는 인체동작을 구속이나 제한 없이 기록할 수 있게 된다. 본 연구의 결과는 환자의 움직임 이상과 일상생활동작을 관찰하는 데 사용될 수 있을 것이다.

  • PDF

TTL : 시간과 어플리케이션을 활용한 자동 도어락 시스템 (TTL : An automatic door lock system utilizing time and applications)

  • 정진영;문상국
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국정보통신학회 2015년도 춘계학술대회
    • /
    • pp.900-902
    • /
    • 2015
  • 문이라는 것은 우리가 살면서 매일 열고 닫으며 또한 재산을 지켜주는 가장 기본적인 것이다. 그만큼 우리 생활에 밀접한 관계가 있고 더욱 편리한 생활을 영위하기 위해 다양한 제품으로 개량이 되었다. 하지만 매일 같은 시간에 문을 열고 닫는 사무실이나 관광지와 같은 곳에서는 많은 문을 직접 돌아다니면서 정확한 시간에 열고 닫는 것은 많은 불편함이 있다. 이러한 불편함을 해결하고자 도어락에 시간이라는 개념을 추가하였다. 열리는 시간과 닫히는 시간이 정해져 있다면 그 시간이 기기에 입력이 되어 자동으로 문을 열리고 닫혀서 매우 편리하게 사용할 수 있다. 그리고 도어락을 열고 닫는데 있어서 어플리케이션을 활용하여 편리하게 시간을 설정할 수 있으며 시간설정 뿐만 아니라 바로 문을 개폐할 수 있는 기능을 제공한다. 그래서 우리는 스마트폰 어플리케이션과 통신을 하여 쉽게 문을 개폐하고 시간을 설정할 수 있도록 JAVA 프로그래밍 언어를 기반으로 구현하고, ATmega128을 사용하여 문을 개폐하는 동작을 수행하는 시스템을 C프로그래밍 언어를 기반으로 구현하였다.

  • PDF

병렬 프로토콜 구현을 위한 다중 프로세스 모델의 설계 (Design of Multiprocess Models for Parallel Protocol Implementation)

  • 최선완;정광수
    • 한국정보처리학회논문지
    • /
    • 제4권10호
    • /
    • pp.2544-2552
    • /
    • 1997
  • 본 논문은 병렬 프로토콜 구현을 위해서 (1)채널통신 모델, (2)포크-조인 모델, (3)사건조회 모델이라 부르는 3 가지 유형의 다중 프로세스 모델을 제시한다. 각 모델에 대한 병렬화 사양을 위해서 병렬 프로그래밍 언어인 Par. C System을 사용한다. 제안한 다중 프로세스 모델의 성능을 측정하기 위하여 인터넷 프로토콜 스택의 Internet Protocol (IP)을 Transputer상에서 구현한다. IP 프로토콜 기능은 송신측과 수신측으로 분리하고 양측의 병렬화는 Multiple Instruction Single Data(MISD) 구조를 이용한다. 제안한 모델들은 다양한 실행시간 과부하에 대하여 성능 평가와 비교 분석을 한다. 즉, 채널통신 모델에서는 채널을 경유한 사건 송신, 포크-조인 모델에서는 프로세스 생성, 그리고 사건조회 모델에서는 프로세스간 문맥전환시에 발생하는 과부하를 송신측과 수신측에 대하여 성능을 분석한다. 송신측의 성능 측정 결과, 사건조회 모델이 채널통신 모델과 포크-조인 모델과 비교하여 77%와 9%의 빠른 처리 시간을 보였다. 수신측에서는 포크-조인 모델이 채널통신 모델과 사건조회 모델과 비교하여 55%와 107%의 빠른 처리 시간을 보였다.

  • PDF

임베디드 SQL 기반 정보시스템의 개발 및 관리 방법에 대한 연구 (A Study on the Development and Maintenance of Embedded SQL based Information Systems)

  • 송용욱
    • 한국정보시스템학회지:정보시스템연구
    • /
    • 제19권4호
    • /
    • pp.25-49
    • /
    • 2010
  • As companies introduced ERP (Enterprise Resource Planning) systems since the middle of 1990s, the databases of the companies has become centralized and gigantic. The companies are now developing data-mining based applications on those centralized and gigantic databases for knowledge management. Almost of them are using $Pro^*C$/C++, a embedded SQL programming language, and it's because the $Pro^*C$/C++ is independent of platforms and also fast. However, they suffer from difficulties in development and maintenance due to the characteristics of corporate databases which have intrinsically large number of tables and fields. The purpose of this research is to design and implement a methodology which makes it easier to develop and maintain embedded SQL applications based on relational databases. Firstly, this article analyzes the syntax of $Pro^*C$/C++ and addresses the concept of repetition and duplication which causes the difficulties in development and maintenance of corporate information systems. Then, this article suggests a management architecture of source codes and databases in which a preprocessor generates $Pro^*C$/C++ source codes by referring a DB table specification, which would solve the problem of repetition and duplication. Moreover, this article also suggests another architecture of DB administration in which the preprocessor generates DB administration commands by referring the same table specification, which would solve the problem of repetition and duplication again. The preprocessor, named $PrePro^*C$, has been developed under the UNIX command-line prompt environment to preprocess $Pro^*C$/C++ source codes and SQL administration commands, and is under update to be used in another DB interface environment like ODBC and JDBC, too.

무요소법 프로그래밍에 관한 연구 (A Study of Meshless Method Programming)

  • 김학수;배동명
    • 수산해양기술연구
    • /
    • 제38권2호
    • /
    • pp.110-118
    • /
    • 2002
  • 본 논문에서는 무요소 이론을 정식화하였고 이를 이용한 1차원 및 2차원 EFG 프로그램을 Visual Basic과 C언어를 이용하여 작성해 보았다. 그리고 각각의 EFG 수치해석의 예를 작성된 프로그램을 이용하여 해를 구하였다. 해석결과는 다른 문헌의 결과와 일치하였으며 해석결과에서 나타나듯이 무요소 해의 정도는 영향영역의 비례축소인자 dmax와 가중함수의 종류, 절점 배치형태에 의해 좌우된다는 사실을 알 수 있었다. 특히 1, 2차원 EFG 해석결과에서 가장 최적의 해를 보이며 정해(exact solution)에 가장 근접한 조건은 dmax = 2 이고 가중함수가 3차 Spline형일 때로 나타났으며 유한요소법과 마찬가지로 절점의 수가 많을 수록 그리고 절점을 균일하게 배치할수록 높은 정도를 나타내는 것을 알 수 있었다. 특히 2차원의 경우 3차 Spline형 이외의 다른 가중함수를 사용할 경우에 상당히 큰 오차를 나타내는 점은 1차원 EFG 해석의 결과와는 다른 점이었지만 그 외 대부분 같은 결과를 나타내었다. 1차원에서 절점을 임의로 배치한 경우는 비교적 균일하게 배치한 경우가 해에 근접하는 형태를 나타내었으며 절점 간격이 상대적으로 적은 곳에서 큰 오차를 나타내었다. 그리고 절점을 임의로 선택할 때 변위가 모두 ‘0’의 값을 가지는 경우를 볼 수 있는데, 이는 화면상의 좌표계산에서 생긴 미소한 오차가 절점들에 의해 반복됨으로서 발생하는 것으로 보인다. 또한 탄성계수 값이 클 경우 dmax 에서 계산이 제대로 수행되지 못하는 경우가 있는데, 이는 수치가 double형의 크기를 초과하기 때문인 것으로 보인다. 결과에서 나타나듯이 무요소법에서 적당한 가중함수와 비례축소 인자를 사용하면 정해에 가까운 우수한 해를 얻을 수 있다는 것을 알 수 있다. 비록 프로그래밍 과정이나 이론의 정식화가 유한요소법에 비해 상당히 어려운 점은 있으나 무요소법은 요소의 정보를 필요치 않으므로 사용자 입장에서는 매우 편리할 것이다. 앞으로 경계조건을 효과적으로 만족시키는 문제를 해결하고 효과적인 알고리즘이 개발된다면 실용적으로 유한요소법을 대신할 수 있는 좋은 대안이 될 수 있을 것이라 생각된다.

XML 스키마 문서편집 시스템 (XML Schema Document Editing System)

  • 차원준;최일선;김창수;정회경
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2003년도 춘계종합학술대회
    • /
    • pp.285-288
    • /
    • 2003
  • 기존에 구축된 전자상거래 및 e-Business 분야에서 사용된 XML(extensible Markup Language) 문서는 DTD(Document Type Definition)에 기반하여 작성되었다. 그러나 2001년 5월 XML 스키마(XML Schema)가 W3C에서 Recommendation이 된 이후 많은 XML 응용들이 XML 스키마를 기반으로 개발되는 실정이다. 이와 관련된 대표적인 것으로 ebXML Registry 2.0에서 XML 스키마를 채택하였다. XML 스키마를 개발하면 기존의 DTD를 사용하여 개발할 때에 비해 네임스페이스나 객체지향 개념 등으로 인하여 복잡도가 증가하고 있으며, 다양한 방법으로 코딩을 할 수 있게 되었다. 이에 본 논문에서는 ebXML 프레임워크에서 사용되는 XML 스키마 문서를 효율적으로 저작 및 편집 할 수 있는 사용자 인터페이스를 제공하는 XML 스키마 문서편집 시스템에 관한 연구를 하였다.

  • PDF

네트워크 컴퓨터를 위한 자바 기반의 성능감시기 (A Java-based Performance Monitor for Networked Computer)

  • 김봉준;김동호;황석찬;김명호;최재영
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제27권2호
    • /
    • pp.160-168
    • /
    • 2000
  • 본 논문에서는 네트워크 컴퓨터를 이용하여 병렬 프로그래밍 환경에서 수행되는 프로그램의 성능을 추적하고 평가하기 위한 온라인/일괄처리-사건/시간 기반형 성능 감시기를 제안한다. 본 논문의 JaNeC 성능 감시기는 자바로 구현되어 있으므로 이기종 컴퓨터사이의 시스템 이식성이 뛰어나며, 웹 기반의 그래픽 콘솔을 제공하여 사용자에게 친숙한 인터페이스를 제공한다. 본 논문에서 제시한 성능 감시기는 사용자가 프로그램 실행시에 발생한 이벤트를 보다 쉽게 분석할 수 있도록 태스크나 이벤트를 선택할 수 있는 필터 기능과 TimeLine, Task View, Task History, Message Passing View, Host CPU View 기능 등으로 구성되어 있다.

  • PDF

900MHz RFID 교육용 시스템의 설계 (Design of 900MHz RFID Educational System)

  • 오도봉;김대희;정중수;정광욱
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2009년도 춘계 종합학술대회 논문집
    • /
    • pp.515-520
    • /
    • 2009
  • 본 논문에서는 RFID 기술 중 리더와 태그간 900MHz 대역을 이용한 교육용 시스템 설계를 제시 하였다. 능동형 태그와 리더의 설계는 임베디드 환경에서 구현 하였으며, 리더와 접속 가능한 서버의 소프트웨어 개발은 PC 윈도우 운영체제 환경에서 구현 하였다. 리더와 능동형 태그의 H/W는 ATmega128 프로세서가 사용되었고, 개발 언어는 C 사용되었다. 윈도우 환경에서의 프로그램은 MFC가 사용 되었다. 시스템은 PC에서 리더를 통하여 EPC global Data가 들어있는 태그 관리, 인터넷을 통한 태그의 정보 획득, 태그 메모리에 데이터를 읽고 쓰는 기능이다. 위의 기능들을 활용한 900MHz RFID대역의 교육용 시스템을 설계 하였다.

  • PDF