테크데이즈 코리아 2014 에서 "The Future of C# and .NET Framework"라는 제목으로 발표한 슬라이드 입니다. 관련 동영상 : http://www.microsoftvirtualacademy.com/training-courses/-techdays-korea-2014-t14
2017년 4월 출시된 최신 RAD스튜디오 10.2 도쿄 버전의 최신 기술들을 정리한 문서입니다.
개발 성능 향상, 최신 OS지원, 새로운 개발 영역(클라우드, IoT 등)으로의 손쉬운 확장 등.
개발자들에게 복잡할 수 있는 기술들을 간편하게 적용할 수 있는 RAD스튜디오의 기술과 활용팁 입니다.
테크데이즈 코리아 2014 에서 "The Future of C# and .NET Framework"라는 제목으로 발표한 슬라이드 입니다. 관련 동영상 : http://www.microsoftvirtualacademy.com/training-courses/-techdays-korea-2014-t14
2017년 4월 출시된 최신 RAD스튜디오 10.2 도쿄 버전의 최신 기술들을 정리한 문서입니다.
개발 성능 향상, 최신 OS지원, 새로운 개발 영역(클라우드, IoT 등)으로의 손쉬운 확장 등.
개발자들에게 복잡할 수 있는 기술들을 간편하게 적용할 수 있는 RAD스튜디오의 기술과 활용팁 입니다.
Meetup tools for-cloud_native_apps_meetup20180510-vsminseok kim
마이크로서비스로 시스템을 구성하면 서비스간에 연관관계가 줄어들면서 서비스 릴리즈 속도가 높아지고 유연하게 대처할 수 있지만, 관리포인트가 늘어나게 되어 운영상에 많은 어려움을 마주치게 됩니다. 배포 될 때마다 생성되고 소멸되는 마이크로서비스를 다른 마이크로서비스가 쉽게 참조하게 하고 마이크로서비스들의 설정 정보를 일관되게 관리하는 일은 쉬운일이 아닙니다. 이러한 문제를 해결하기 위해 Spring Cloud 프로젝트와 같은 도구를 비롯하여 Pivotal Cloud Foundry와 같은 클라우드 플랫폼등이 있습니다. 이번 밋업에서는 마이크로서비스를 운영할 때의 어려운점과 도움을 주는 다양한 도구들에 대해 알아보도록 하겠습니다.
[Agenda]
*토크쇼 주제: Cloud Native를 위한 컨테이너 플랫폼 구현과 활용 이야기
1. 시장 및 기술동향 소개 & Container & Kubernetes 소개
2. Red Hat OpenShift를 왜 써야 할까요?
3. OpenShift Infra 구성 방안은 어떻게 되나요?
4. OpenShift와 Kubernetes의 주요 차이점은 무엇일까요?
5. 완전한 오픈소스 기반 OpenShift로 PaaS를 빠르게 구축이 가능 하나요?
6.컨테이너플랫폼의 운영을 효율적으로 하기위한 표준화에는 어떤 것이 필요할까요?
7. Red Hat OpenShift를 이용하여 기존의 시스템을 마이그레이션 하는 방법은 무엇인가요?
8. 개발자와 운영자가 일을 수월하게 할 수 있도록 도움을 준다고 하는데 어떠한 부분인가요?
9. Red Hat OpenShift 구축 성공 사례가 있나요?
Pivotal은 개발자 생산성을 높이고 운영비용을 줄이면서 성공적인 비지니스를 할 수 있도록 개발 환경의 혁신 문화와 플랫폼을 제공하고 있습니다.
본 세션에서는 플랫폼의 구조와 효과에 대해 소개하며 기업이 진정한 기술선도 업체로 발전해 갈 수 있도록 혁신적은 플랫폼 *PAS, *PKS를 소개합니다.
*PAS: Pivotal Application Service로 개발자에게 기능 구현 속도를 높이고, 운영 팀은 세계 최고 수준의 가용성을 제공해주는 서비스입니다.
*PKS: Pivotal Container Service로 Kubernates의 배포, 관리, 모니터링, 업데이트 등을 자동화하고 Pivotal에서 관리해주는 서비스입니다
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSAVMware Tanzu Korea
최근 IT 시장은 ‘클라우드 네이티브’ 라는 컨셉을 적극적으로 받아들이면서 혁신의 속도를 높이기 위해 여러가지 노력을 기울이고 있습니다. 본 세션에서는 ‘클라우드 네이티브’ 를 이루는 4가지 요소인 DevOps, CICD, Container, MSA 를 간략하게 살펴보고 MSA 가 나머지 클라우드 네이티브 3 요소와 어떻게 상호작용하여 고객 여러분의 비즈니스에 도움이 되는지 알아봅니다. 그리고 MSA 로 이행하기 위한 조직면에서의 요건과 기술 면에서의 요건을 살펴봅니다.
RAD스튜디오는 항상 최신 OS 지원을 위해 꾸준히 업데이트 되고 있습니다.
이 자료는 2017년 11월 진행된 온라인 세미나의 발표자료입니다. RAD스튜디오 10.2 버전으로 최신 OS와 기술들을 프로젝트에 적용하고, 개발 영역을 확장하는 방법을 설명합니다.
다루는 내용은 다음과 같습니다:
[최신 기술 적용-운영체제와 기술]
- 윈도우 10, 멀티플랫폼 지원, 사물인터넷, 겟잇 패키지 매니저
[개발 영역 확장-플랫폼과 아키텍처]
- 파이어몽키 프레임워크, RAD서버, 엔터프라이즈 커넥터
*온라인 세미나 다시보기는 다음 링크를 활용하세요:
https://goo.gl/tJK765
This portfolio document summarizes Steve Kyonglok Yoon's background and experience. Some key points:
- Over 18 years of experience as a software engineer specializing in C/C++ and with skills in other languages like ARM7 assembly, C#, Java, Python and Perl.
- Educational background includes a degree from Hongik University and having published academic papers on topics like image processing and iris recognition.
- Professional experience includes developing software solutions for digital TV technologies like DVB-H, DRM, and DAB. He has supported mass production for companies in areas like mobile, set-top boxes, and automotive infotainment.
- Other experience includes Bluetooth application development,
Meetup tools for-cloud_native_apps_meetup20180510-vsminseok kim
마이크로서비스로 시스템을 구성하면 서비스간에 연관관계가 줄어들면서 서비스 릴리즈 속도가 높아지고 유연하게 대처할 수 있지만, 관리포인트가 늘어나게 되어 운영상에 많은 어려움을 마주치게 됩니다. 배포 될 때마다 생성되고 소멸되는 마이크로서비스를 다른 마이크로서비스가 쉽게 참조하게 하고 마이크로서비스들의 설정 정보를 일관되게 관리하는 일은 쉬운일이 아닙니다. 이러한 문제를 해결하기 위해 Spring Cloud 프로젝트와 같은 도구를 비롯하여 Pivotal Cloud Foundry와 같은 클라우드 플랫폼등이 있습니다. 이번 밋업에서는 마이크로서비스를 운영할 때의 어려운점과 도움을 주는 다양한 도구들에 대해 알아보도록 하겠습니다.
[Agenda]
*토크쇼 주제: Cloud Native를 위한 컨테이너 플랫폼 구현과 활용 이야기
1. 시장 및 기술동향 소개 & Container & Kubernetes 소개
2. Red Hat OpenShift를 왜 써야 할까요?
3. OpenShift Infra 구성 방안은 어떻게 되나요?
4. OpenShift와 Kubernetes의 주요 차이점은 무엇일까요?
5. 완전한 오픈소스 기반 OpenShift로 PaaS를 빠르게 구축이 가능 하나요?
6.컨테이너플랫폼의 운영을 효율적으로 하기위한 표준화에는 어떤 것이 필요할까요?
7. Red Hat OpenShift를 이용하여 기존의 시스템을 마이그레이션 하는 방법은 무엇인가요?
8. 개발자와 운영자가 일을 수월하게 할 수 있도록 도움을 준다고 하는데 어떠한 부분인가요?
9. Red Hat OpenShift 구축 성공 사례가 있나요?
Pivotal은 개발자 생산성을 높이고 운영비용을 줄이면서 성공적인 비지니스를 할 수 있도록 개발 환경의 혁신 문화와 플랫폼을 제공하고 있습니다.
본 세션에서는 플랫폼의 구조와 효과에 대해 소개하며 기업이 진정한 기술선도 업체로 발전해 갈 수 있도록 혁신적은 플랫폼 *PAS, *PKS를 소개합니다.
*PAS: Pivotal Application Service로 개발자에게 기능 구현 속도를 높이고, 운영 팀은 세계 최고 수준의 가용성을 제공해주는 서비스입니다.
*PKS: Pivotal Container Service로 Kubernates의 배포, 관리, 모니터링, 업데이트 등을 자동화하고 Pivotal에서 관리해주는 서비스입니다
클라우드 네이티브 IT를 위한 4가지 요소와 상관관계 - DevOps, CI/CD, Container, 그리고 MSAVMware Tanzu Korea
최근 IT 시장은 ‘클라우드 네이티브’ 라는 컨셉을 적극적으로 받아들이면서 혁신의 속도를 높이기 위해 여러가지 노력을 기울이고 있습니다. 본 세션에서는 ‘클라우드 네이티브’ 를 이루는 4가지 요소인 DevOps, CICD, Container, MSA 를 간략하게 살펴보고 MSA 가 나머지 클라우드 네이티브 3 요소와 어떻게 상호작용하여 고객 여러분의 비즈니스에 도움이 되는지 알아봅니다. 그리고 MSA 로 이행하기 위한 조직면에서의 요건과 기술 면에서의 요건을 살펴봅니다.
RAD스튜디오는 항상 최신 OS 지원을 위해 꾸준히 업데이트 되고 있습니다.
이 자료는 2017년 11월 진행된 온라인 세미나의 발표자료입니다. RAD스튜디오 10.2 버전으로 최신 OS와 기술들을 프로젝트에 적용하고, 개발 영역을 확장하는 방법을 설명합니다.
다루는 내용은 다음과 같습니다:
[최신 기술 적용-운영체제와 기술]
- 윈도우 10, 멀티플랫폼 지원, 사물인터넷, 겟잇 패키지 매니저
[개발 영역 확장-플랫폼과 아키텍처]
- 파이어몽키 프레임워크, RAD서버, 엔터프라이즈 커넥터
*온라인 세미나 다시보기는 다음 링크를 활용하세요:
https://goo.gl/tJK765
This portfolio document summarizes Steve Kyonglok Yoon's background and experience. Some key points:
- Over 18 years of experience as a software engineer specializing in C/C++ and with skills in other languages like ARM7 assembly, C#, Java, Python and Perl.
- Educational background includes a degree from Hongik University and having published academic papers on topics like image processing and iris recognition.
- Professional experience includes developing software solutions for digital TV technologies like DVB-H, DRM, and DAB. He has supported mass production for companies in areas like mobile, set-top boxes, and automotive infotainment.
- Other experience includes Bluetooth application development,
This document provides a portfolio summary for Steve Kyong-lok Yoon. It summarizes his work experience developing various digital media software solutions between 2005-2015 for customers like Newport Media Inc. and Alticast Inc. It also briefly outlines his personal interests including enjoying his job, self-development, and co-working. Technical overviews are provided for DVB-H, DRM, XCAS, and DAB digital media standards and technologies. The document closes with an emphasis on Steve's craftsmanship and over 10 years of experience as a software engineer primarily in C/C++.
This document discusses diagramming tools for documenting code using Doxygen. It describes sequence diagrams created with Mscgen and state transaction diagrams generated with Graphviz. It provides the file paths for these tools, syntax examples for Mscgen and Graphviz, and sample Doxygen configuration settings and comments to generate diagrams for documented code.
2. WHO AM I
1. Enjoying the job
- 일을 즐겁고 신나게 합니다.
- 오른쪽의 사진은 DAB EU field test 중 즐거운
휴식을 취하고 있는 모습입니다.
2. Outside activity
- 더 나은 업무 성과를 위해 다양한 사람들과
교류하며 훌륭한 방법론을 배우며 가르칩니다.
- 오른쪽의 사진은 ‘비폭력대화'세미나를 진행
중인 모습입니다.
3. Self-development
- 자기 계발을 위해 많은 책을 읽습니다.
4. Co-working
- 결과를 위해 열심히 협업을 합니다.
- 오른쪽의 사진은 버퍼 운용 알고리즘 개발을
위한 회의 중에 작성한 화이트 보드의
모습입니다.
me
1 2
3
4
3. CRAFTSMANSHIP
18년 이상의 소프트웨어 엔지니어 경력
• High level: C/C++,
Capable: ARM7 assembly, Python, Perl
• RTOS와 embedded system에 대한 지식과
경험이 풍부합니다.
• KISS and DRY 원칙에 충실한 아름다운 코
드를 작성합니다.
오른쪽은 MPEG2-TS demux를 직접 구현한
코드입니다.
4. WHAT I’VE DONE (undergraduate)
1996
1998
2001
2004
2006
홍익대학교 입학
육군 11군단 입대
육군 병장 전역
홍익대학교 졸업
영상처리 연구실에서 학부생 연구원으로
활동하며 몇 편의 논문에 참여
학술논문:
2003 Microsoft Certified Professional
for VC++ 6.0
6. 논문: A vision system for the inspection of
automobile fuse boxes
• 조명과 렌즈에 의한 간섭을 배제하기 위한 영상 후처
리, 그리고 색상과 문자 인식을 통해 휴즈 및 릴레이
박스의 불량을 검출해 내는 방법에 대한 연구
• VC++를 이용하여 영상처리 알고리즘을 소스코드로
구현하여 윈도용 데모 프로그램을 작성
• MFC, Modeless dialog를 이용하여 어플리케이션을
구현하였고, 미리 이미지 캡쳐 보드를 통해 생성된
이미지 파일을 읽어 들여 영상처리 알고리즘을 적용
하였음
7. 논문: A feature extraction method for binary iris
code construction
• 이진 홍채 코드 구성을 위한 홍채 추출 방법에 대한
연구
• 전체 논문 중 홍채(외원) 추출을 위해 동공 영역(내원)
을 검출/분리해 내는 알고리즘 개발: 홍채 중심점과
동공 중심점이 다르기 때문에 더 많은 홍채 정보를
추출하기 위해 동공 영역을 분리할 필요가 있음
• 동공 영역 분리 알고리즘은 2004년 정보 및 제어 학
술대회(CICS_04)에서 “홍채 인식을 위한 홍채 영역
추출"로 발표
• VC++를 이용하여 콘솔 어플리케이션을 구현하여 알
고리즘 성능 검증
8. WHAT I’VE DONE (for companies)
2005 2015
2009 2010
Developed DVB-H
software solution
Developed DRM
software solution
Developed X-CAS
software solution
Developed DAB
software solution
Newport Media Inc. Alticast Inc. Telechips Inc.
Supported
consumer BT
HID
Broadcom Ltd.
(Mobile) DVB-H/DRM (STB) CAS (Auto) DAB
2016
Cypress Semi. Co.
Supported
consumer
WICED BT app
2018 2019 2021
Nordic Semiconductor
- Support LTE Cat-M1/NB-
IoT certification in LGU+,
- Implement GNSS
application(enhancing
location estimation using
Linear Kalman filter and
fusing Cellular/GNSS/INS)
Supported
automotive BT
controller F/W
9. Digital Video Broadcasting - Handheld
• 모바일 방송 표준 DVB-H의 프로토콜 스택을 위한
소프트웨어 솔루션 구현
• CAS/DRM interface와 ESG interface, 그리고 ESG
manager의 설계 및 구현
• DVB-H protocol stack 중 단방향 파일 전송 프로토콜
인 FLUTE와 미디어 전송 세션 정보를 전달하는 SDP
파일 파서를 구현
• Nagravision, Irdeto, NDS CAS를 모바일 TV 휴대전화
에 기능 통합
• C언어를 사용하였으며, 퀄컴 SoC의 ARM9에서 동작하
도록 소프트웨어 솔루션을 구현
• DVB-H S/W 솔루션의 이탈리아 H3G 향, Telecom
Italy 향, 러시아 Vimpelcom 향 모바일 TV 양산
10. Digital Rights Management
• Open Mobile Alliance Broadcasting DRM S/W 솔루션 구
현
• Key manager, SDP parser, XML parser 구현
• ISMACryp, IPSec의 descrambler 구현
• C언어를 사용하였으며, 퀄컴 SoC의 ARM9에서 동작하도록 소
프트웨어 솔루션을 구현
• 프랑스 Orange 향 모바일 TV에 DRM S/W 솔루션 탑재 양
산
11. Exchangeable Conditional Access System
• OMA BCAST DRM 표준을 활용한 한국형 CAS 표준
인 XCAS(Exchangeable Conditional Access System)
구현
• Embedded Linux STB(Set-top Box)에서 구동되는
XCAS manager, XCAS monitor, XCAS bootloader 구현
• XCAS manager: XCAS client의 version 관리
• XCAS monitor: XCAS client의 상태 관리
• XCAS bootloader: XCAS client 업데이트 후 실행
• Broadcom SoC의 ARM9에서 동작하는 embedded
Linux OS에서 실행되는 소프트웨어 어플리케이션 구
현
• Linux IPC protocol을 이용한 통신 기능 사용(멀티 프
로세스 솔루션)
• C언어로 구현
• T-broad, C&M cable TV에서 양산
12. Digital Audio Broadcasting
• DAB software solution 구현
• FIC(Fast Information Channel) decoder & Database
구현
• MPEG-2 TS decoder 구현
• MOT decoder 구현
• Slide Show manager 구현
• EPG decoder & manager 구현
• DAB-DAB 및 DAB-FM service following 구현
• DAB-FM seamless switching 구현
• DAB Traffic Announcement 구현
• C언어를 이용하여 텔레칩스 SoC ARM9 에서 동작하는
소프트웨어 솔루션 구현
• Car Audio 양산 지원
• 미쯔비시 자동차 향 DAB 모듈 양산
• GM OPEL향 LG AVN의 DAB 모듈 양산
• 현대 자동차향 모비스 AVN의 DAB 모듈 양산
13. DAB PC player
• VC++에서 wxWidgets를 사용하여 DAB PC player를
구현
• DAB 방송을 통해 들어온 데이터들의 시각화와 오디
오 플레이 기능
• 어플리케이션 구현 작업에서 아래의 작업에 기여했
음
• 어플리케이션 설계
• ETI 스트림 파일로부터 DAB FIC와 MSC 채널을 분리하
여 PC에서 직접 DAB 플레이를 할 수 있도록 함
• 각 프로토콜을 파싱 및 데이터베이스 화
• 프로그램 유지보수
14. Bluetooth HID application
• Broadcom Ltd., Cypress semiconductor co.의 SoC로 구현
된 Bluetooth HID solution의 고객사 양산 지원과 문제 해
결
• ROM(Read-Only Memory)에 적재되어 있는 Bluetooth
Firmware에서 발생한 문제 해결
• ROM 코드로 제공되는 I2C, SPI 인터페이스의 문제 해결
• ARM-cortex M3/4 assembly language를 이용하여 ROM
code의 문제 코드를 수정 패치
• HID application에 연결되는 주변 장치에 대한 디바이스 드
라이버 구현
• 고객사 요청의 HID application 기능 구현(예, 특수 목적 IR
transmission)
• HID application은 제한된 C++로 구현
15. Cypress WICED/MODUS application
• Cypress semiconductor co.의 통합 소프트웨어 솔루
션인 WICED/MODUS를 이용한 고객사의 Bluetooth
solution 개발 지원 및 문제 해결
• WICED/MODUS IDE를 통한 Bluetooth solution 개발
교육
• WICED/MODUS 소프트웨어 솔루션 문제점 해결
• BT Stack (stand alone protocol stack)의 문제점 해결
• BT controller firmware의 문제점 해결
16. Bluetooth Controller Firmware
• Broadcom Ltd., Cypress semiconductor co.의 SoC로
구현된 Bluetooth solution의 고객사 양산 지원과 문
제 해결
• ROM(Read-Only Memory)에 적재되어 있는
Bluetooth Firmware에서 발생한 문제 해결
• Bluetooth RF channel air sniffer 장비를 이용하여
Bluetooth 통신 중 발생하는 프로토콜 상 문제 확인과
해결
• ARM-cortex M3/4 assembly language를 이용하여
ROM code의 문제 코드를 수정 패치
• C언어를 이용하여 고객사의 요구사항을 구현하고,
ROM code로부터 분기하여 신규 기능이 실행되도록
assembly language를 이용하여 수정 패치
• Bluetooth controller 관련 고객사 교육
17. QT Bluetooth test application
• QT creator를 이용하여 구현된 Bluetooth sample ap
plication의 유지 보수
• Bluetooth test를 위한 기능 추가 및 수정
• Bluetooth 프로토콜을 활용한 고객사의 신규 기능
추가 및 테스트
18. Location estimation Fusing GNSS/Cellular
• 선형 칼만 필터를 이용한 GNSS/Cellular location 융
합으로 위치 추정
• nRF9160 Development Kit을 이용
• 테스트 결과 (왼쪽 그림):
• 도심지 운행
• 지하 고속화 도로 운행
• 터널 운행
• 파란색 점은 추정 위치
• 빨간색 점은 GNSS 위치
• 노란색 점은 Cellular 위치
• 결론:
• 단일 셀 Cellular 위치는 오차가 크다
• 선형 칼만 필터를 이용한 GNSS/Cellular 위치 융합만
으로 위치 추정을 하면 오차를 상쇄하는데 제한이 크
다
19. Location estimation Fusing GNSS/IMU
Thingy:91 Development Kit (GPS + Accelerometer) nRF9160 Development Kit (GPS) + GY-85 IMU
(Gyroscope+Accelerometer+Geomagnetic sensor)
Telit Bravo Cellular IoT Evaluation Kit
(GPS+Gyroscope+Accelerometer+Geomagnetic sensor)
가정:
• 차량 진행방향과 가속도 센서의 x 축
방향이 일치
• 차량의 Roll, Yaw 회전은 미미하다
구현: 가속도센서로부터 Pitch 회전만
고려하여 속도를 계산한 뒤, 선형 칼만
필터로 위치, 속도 모델을 통해 위치 추정
결과: 추정된 위치의 오차가 크다
Kraft or
Madgwick
Rote zacc Subtract g UKF
zIMU zacc zGPS
q Wzacc Wa p, v, a
• M. Roobeek의 ‘Motion tracking in field sports using GPS and IMU’
논문의 알고리즘 구현 중 (2022/10/14 현재)
• 구현 장치
• nRF9160 DK+GY-85 IMU
• Telit Bravo Cellular IoT EVK
20. Reboot today
Thank you for listening.
Hope we could make relationship for
sustainable businesses.