• 제목/요약/키워드: Linux kernel

검색결과 301건 처리시간 0.027초

Zephyr 커널에서 고정 시간 동기식 IPC 구현 (Fixed Time Synchronous IPC in Zephyr Kernel)

  • 정주영;김은영;신동하
    • 대한임베디드공학회논문지
    • /
    • 제12권4호
    • /
    • pp.205-212
    • /
    • 2017
  • Linux Foundation has announced a real-time kernel, called Zephyr, for IoT applications recently. Zephyr kernel provides synchronous and asynchronous IPC for data communication between threads. Synchronous IPC is useful for programming multi-threads that need to be executed synchronously, since the sender thread is blocked until the data is delivered to the receiver thread and the completion of data transfer can be known to two threads. In general, 'IPC execution time' is defined as the time duration between the sender thread sends data and the receiver thread receives the data sent. Especially, it is important that 'IPC execution time' in the synchronous IPC should be fixed in real-time kernel like Zephyr. However, we have found that the execution time of the synchronous IPC in Zephyr kernel increases in proportion to the number of threads executing in the kernel. In this paper, we propose a method to implement a fixed time synchronous IPC in Zephyr kernel using Direct Thread Switching(DTS) technique. Using the technique, the receiver thread executes directly after the sender thread sends a data during the remaining time slice of the sender thread and we can archive a fixed IPC execution time even when the number of threads executing in the kernel increases. In this paper, we implemented synchronous IPC using DTS in the Zephyr kernel and found the IPC execution time of the IPC is always 389 cycle that is relatively small and fixed.

리녹스 커널 백도어 침업에 대한 차단 기법 연구 (A Study on Intrusion Protection Techniques against Linux Kernel Backdoor)

  • 김진택;고정호;홍민석;손철웅;박범;이도원;이극
    • 한국인터넷방송통신학회논문지
    • /
    • 제9권3호
    • /
    • pp.201-207
    • /
    • 2009
  • 기존의 백도어는 애플리케이션 모드인 유저 모드에서 작동을 하였기 때문에 tripwire나 MD5와 같은 시스템파일 무결성 검사로 백도어의 유무를 확인할 수 가 있었다. 그러나 커널 모듈을 이용한 백도어는 기존의 애플리케이션 모드에서 작동하는 시스템 파일 무결성 검사로는 백도어의 유무를 확인할 수 없다. 이런 LKM 커널 백도어를 방지하기 위해 여러 가지 프로그램들이 제시가 되었지만 시스템 콜 테이블 변경 유무만을 검사하므로 방지에 한계가 있다. 본 논문에서는 이러한 LKM 커널 백도어에 대한 공격의 위험성을 인식하여 기존의 무결성 검사만으로 커널 백도어 침입을 차단할 수 없었던 커다란 한계성에 대한 대안을 제시하고자 한다.

  • PDF

임베디드 리눅스 시스템에서 Kernel-Warm-Start를 이용한 재부팅 시간 단축에 관한 연구 (KWS(Kernel-Warm-Start) : Reducing Reboot Time in Embedded Linux System)

  • 신진철;원유집;김종민
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2012년도 한국컴퓨터종합학술대회논문집 Vol.39 No.1(A)
    • /
    • pp.179-181
    • /
    • 2012
  • 본 연구는 NAND 플래시 기반의 임베디드 시스템에 warm-start 개념을 도입하여 재부팅 시간을 단축시키는 방법에 관한 연구이다. NAND 플래시 기반의 임베디드 시스템에서는 부팅 시 커널 이미지를 NAND 플래시에서 DRAM으로 로드하는 과정이 필요하다. 최근 SoC (System-On-Chip)는 "software reset" 기능을 지원하며 DRAM의 내용을 훼손하지 않고 시스템을 리셋하는 것이 가능하다. 우리는 이 기능을 이용하여 DRAM 상에 이미 로드되어 있는 커널 요소를 재부팅 시에도 다시 사용하도록 구현하고, 그에 따라 중복된 커널 요소의 로드를 제거했다. 이 기법을 우리는 KWS(Kernel-Warm-Start) 라는 이름으로 정의했다. KWS 에서는 부팅이 재부팅인 경우 필요한 커널 요소만을 로드한다. 결과적으로 재부팅 시 커널 요소의 로드 크기를 89.29% 감소시킬 수 있었고, 재부팅 시간을 첫 번째 부팅에서 75.47% 단축할 수 있었다.

모바일 장치를 위한 iSCSI 프로토콜 기반의 가상 USB 드라이브 설계 및 구현 (Design and Implementation of iSCSI Protocol Based Virtual USB Drive for Mobile Devices)

  • 최재현;남영진;김종완
    • 대한임베디드공학회논문지
    • /
    • 제5권4호
    • /
    • pp.175-184
    • /
    • 2010
  • This paper designs a virtual USB drive for mobile devices which gives an illusion of a traditional USB flash memory drive and provides capacity-free storage space over IP network. The virtual USB drive operating with a S3C2410 hardware platform and embedded linux consists of USB device driver, an iSCSI-enabled network stack, and a seamless USB/iSCSI tunneling module. For performance enhancement, it additionally provides a kernel-level seamless USB/iSCSI tunneling module and data sharing with symbol references among kernel modules. Experiments reveal that the kernel-level implementation can improve the I/O performance up to 8 percentage, as compared with the user-level implementation.

커널 스레드 웹 가속기의 분석 (Analysis of Kernel-Thread Web Accelerator)

  • 황준;남의석;민병조;김학배
    • 한국컴퓨터산업교육학회:학술대회논문집
    • /
    • 한국컴퓨터산업교육학회 2003년도 제4회 종합학술대회 논문집
    • /
    • pp.17-22
    • /
    • 2003
  • The surge of Internet traffic makes the bottleneck nowadays. This problem can be reduced by substituting the media of network, routers and switches with more high-performance goods. However, we focused radically the server performance of processing the service requests. We prepose the method improving performance of server in the Linux kernel stack. This accelerator accepts the requests from many clients, and processes them using not user threads but kernel thread. To do so, we can reduce the overhead caused by frequent calling of system calls and the overhead of context switching between threads. Furthermore, we implement CPN(Coloured Petri Net) model. By using the CPN model criteria, we can analyze the characteristics of operation times in addition to the reachability of system. Benchmark of the system proves the model is valid.

  • PDF

사용자 수준의 단말기 구동기 모델 (TTY Device Driver Model of User-Level)

  • 이형주;임성락
    • 한국정보처리학회논문지
    • /
    • 제2권6호
    • /
    • pp.815-822
    • /
    • 1995
  • 기존의 유닉스 시스템에서는 모든 장치의 구동기가 커널 내부에 구현되어 있다. 따라서, 새로운 장치를 지원하기 위한 구동기를 추가하거나 기존의 구동기를 변경할 경우 커널 내부의 수정 작업이 불가피하다. 일반적으로 유닉스 시스템에서는 커널내 부의 수정 작업이 매우 어렵다. 본 논문에서는 이러한 어려움을 극복하기 위한 방법 으로써 사용자 수준의 단말기 구동기 모델을 제시한다. 제시한 모델의 기본 개념은 단말기 구동기를 사용자 수준의 서버로 구현함으로써 새로운 단말기 구동기의 동적 재구성을 제공하는 것이다. 제시한 모델의 타당성을 검증하기 위해 사용자 수준의 단말기 구동기를 SunOS 와 Linux 환경에서 구현하고, 그 성능을 평가하였다.

  • PDF

듀얼 버스 시스템에서의 공유 메모리 커널 모듈 구현 (Implementation of Kernel Module for Shared Memory in Dual Bus System)

  • 문지훈;오재철
    • 한국전자통신학회논문지
    • /
    • 제10권5호
    • /
    • pp.539-548
    • /
    • 2015
  • 본 논문에서는 프로세서별 서로 다른 버스에 서로 다른 운영체제를 갖는 멀티코어 시스템에서 공유 메모리 기능을 구현하고, 임베디드 리눅스 시스템을 통하여 두 프로세서 사이에서 공유 메모리 기능을 실험하였다. 듀얼 버스 구조에서 공유 메모리 구현을 위해 메모리 컨트롤러를 이용하였으며, 리스트 자료구조를 통하여 공유 메모리 세그먼트를 관리한다. AMP 멀티 코어 실험을 위하여 2개의 프로세서 코어에 리눅스 운영체제를 탑재하도록 하였다. 그리고 공유 메모리 테스트를 위하여 구현된 커널 모듈을 이용하여 공유 메모리 생성 및 이용이 가능함을 확인 하였다.

응용프로그램의 작업량을 고려한 임베디드 프로세서의 동적 전압 조절 (Dynamic Voltage Scaling based on Workload of Application for Embedded Processor)

  • 왕홍문;김종태
    • 조명전기설비학회논문지
    • /
    • 제22권4호
    • /
    • pp.93-99
    • /
    • 2008
  • 휴대용 기기의 다양한 기능으로 인해 에너지 절약은 더욱 중요한 문제가 되고 있다. Dynamic Voltage Scaling(DVS)는 임베디드 기기에서 대표적으로 사용되는 에너지 절약 방법이다. 본 논문에서는 응용프로그램의 작업량 변화에 따라 프로세서의 동작 전압과 속도를 조절할 수 있는 DVS 알고리즘을 제안한다. 제안된 DVS 알고리즘은 커널의 DVS 모듈과 응용프로기램의 작업량 변화를 관찰하는 함수로 구성되어 있으며 작업량이 급격히 증가 하거나 감소하는 경우 이에 알맞은 프로세서의 동작 수준을 결정함으로서 작업의 데드라인을 넘기지 않으면서도 전력 소비를 줄일 수 있도록 하였다. 제안된 DVS 알고리즘은 Linux 2.6 커널과 PXA270프로세서를 이용한 임베디드 시스템에서 구현되었다.

지능형 Gadget 시스템을 위한 개발환경 구현 (Implementation of Development Environment for Intelligent Gadget System)

  • 정갑중;배창석
    • 한국정보통신학회논문지
    • /
    • 제11권8호
    • /
    • pp.1528-1534
    • /
    • 2007
  • 본 논문은 지능형 Gadget 시스템의 개발환경 구현에 관한 논문이다. 지능형 Gadget 시스템에서 사용된 임베디드시스템 응용 프로그램과 리눅스 커널의 구조 및 동작에 대해 논하고 지능형 Gadget 시스템에 필요한 기능 및 구성 요소에 대해 조사 및 분석을 통한 리눅스 커널과의 동작 및 기능 검증 구현을 보인다. 새로운 지능형 임베디드 시스템의 하나인 Gadget 시스템에 적용 가능하도록 요구되는 기능과 동작을 구현하고 새로운 소형 운영 체제를 위한 개발에 적용 가능하다. 그러한 소형 운영체제는 지능형 개인정보서비스를 위한 임베디드 Gadget 시스템으로써 지능형 정보화 기능을 지원하고 새로운 소형 운영 체제를 탑재한 시스템의 개발에 적용 가능하다. 본 논문에서는 그러한 지능형 임베디드 Gadget 시스템과 응용 개발을 위한 개발환경 구현에 대하여 기술한다.

Implementation of Memory Efficient Flash Translation Layer for Open-channel SSDs

  • Oh, Gijun;Ahn, Sungyong
    • International journal of advanced smart convergence
    • /
    • 제10권1호
    • /
    • pp.142-150
    • /
    • 2021
  • Open-channel SSD is a new type of Solid-State Disk (SSD) that improves the garbage collection overhead and write amplification due to physical constraints of NAND flash memory by exposing the internal structure of the SSD to the host. However, the host-level Flash Translation Layer (FTL) provided for open-channel SSDs in the current Linux kernel consumes host memory excessively because it use page-level mapping table to translate logical address to physical address. Therefore, in this paper, we implemente a selective mapping table loading scheme that loads only a currently required part of the mapping table to the mapping table cache from SSD instead of entire mapping table. In addition, to increase the hit ratio of the mapping table cache, filesystem information and mapping table access history are utilized for cache replacement policy. The proposed scheme is implemented in the host-level FTL of the Linux kernel and evaluated using open-channel SSD emulator. According to the evaluation results, we can achieve 80% of I/O performance using the only 32% of memory usage compared to the previous host-level FTL.