[라즈베리파이] docker-compose 로 서비스 운영해보기
By 지훈현서 | 2022년 4월 7일 |
라즈베리파이가 최근에는 재고가 없어 난리 입니다.전 세계적으로 펜데믹에 이어 CPU 등이 품귀인가 봅니다.시간이 지나면서 풀리기 바랍니다. 이번에는 그동안 라즈베리파이는 무시하고 돌리지 않았던docker 와 docker-compose를 설치하고 서비스를 돌려보는 것을 해 봅니다. 우선 docker 설치 방법입니다. sudo apt-get update && sudo apt-get upgradecurl -sSL | sh 위의 두 줄로 간단히 설치 가능합니다. 이제는 기본 pi 계정으로 docker 명령이 잘 돌도록 다음 명령이 필요합니다. sudo usermod -aG docker ${USER} 다음은 docker-compose 설치 방법입니다.기존에 다른 것과 달리 pip로 설치하는
[라즈베리파이] 스케줄링: 컨택스트 스위치(Context Switch)이란
By Guillermo Austin Kim | 2019년 2월 2일 |
CPU에서 실행 중인 프로세스를 비우고 새로운 프로세스를 CPU에서 실행시키는 과정을 컨택스트 스위칭이라고 합니다. 컨택스트 스위치란다음 그림을 보면서 컨택스트 스위칭란 용어에 대해서 살펴봅시다. CPU에서 E란 프로세스가 실행 중이라고 가정합시다. 어떤 프로세스가 CPU에서 실행 중이란 의미는 CPU 레지스터 세트에 프로세스 실행 정보가 채워져 있다는 의미입니다. 어떤 코드가 실행 중이란 의미는 ARM 코어 PC(프로그램 카운터)에 현재 실행 중인 주소를 가르키고 있다는 것입니다. E란 프로세스는 계속 ARM 코어에서 실행을 하려고 하지만 A, B, C, D 프로세스들이 실행 요청을 합니다. 스케줄러는 ARM 코어에서 실행 중인 E란 프로세스와 A, B, C, D 프로세스들과 우선 순위를 비교합니다
[라즈베리파이] 인터럽트 핸들러 등록(2) - #CS
By Guillermo Austin Kim | 2018년 5월 25일 |
[라즈베리파이] 인터럽트 핸들러 등록(1) - #CShttp://rousalome.egloos.com/9976901에서 계속 ... 이번에는 다른 코드를 입력해서 인터럽트 핸들러와 인터럽트 디스크립터에 대해 알아볼게요. 다음 패치는 인터럽트 핸들러를 등록한 후 바로 해당 인터럽트 번호로 인터럽트 디스크립터를 커널 함수로 읽어와 인터럽트 설정 정보를 출력합니다. 제대로 인터럽트 핸들러를 등록했는지 점검하고 싶을 때 활용하면 좋은 코드입니다. 파라미터가 인터럽트 번호이므로 인터럽트 번호만 대입하면 다른 함수에서도 호출할 수 있죠. 이제부터 코드를 어떻게 작성했는지 함께 살펴볼까요? 우선 dwc_otg_driver_probe 함수 위에 다음 코드를 입력합니다.1 static void interrupt_de
[Python] dpath를 이용한 xpath 처럼 dict 에서 자료 구해오기
By 지훈현서 | 2020년 11월 2일 |
RESTful API 를 이용한 FrontEnd 및 BackEnd의 JSON 데이터 연동 등은 이제프로그램 개발에 있어 거의 그 자체가 표준처럼 인식되고 있습니다.JSON 뿐만 아니라 동일한 1:1 변환이 가능한 YAML 또한 JSON 과 동일한자료 표현 이외에 코멘트도 가능하고 읽기에 더 편하다는 이유 때문에이제 설정파일 등으로 자주 사용됩니다. 다른 언어에서도 유사한 Key:Value 쌍을 표현하는 자료구조가 있기는 하지만,파이썬의 dict 처럼 자유롭고 json과 거의 100% 동일하게 표현되는 자료구조는좀처럼 찾기 쉽지 않습니다. 여기에다 파이썬의 dict는 MongoDB의 BSON으로 바로 저장된다는 것이백엔드 로지과 MongoDB에 저장되는 것이 바로 되는 아주 환상적인 조합이 되는것이지요.