[라즈베리파이] 동기화 - 스핀락(spinlock): spin_lock_irq() 소개
By Guillermo Austin Kim | 2018년 12월 30일 |
이해를 돕기 위해 다시 화장실을 예를 들겠습니다. 어떤 영업 사원이 있다고 가정하겠습니다. 영업 사원은 언제 전화를 받는 것이 회사 규칙입니다. 그런데 이 영업 사원은 화장실에 들어갈 때 전화를 안 받아도 된다고 회사와 약속을 했습니다. 화장실에서 중요한 용무를 봐야 하기 때문입니다. 그 조건으로 화장실 문에 들어갈 때는 비행기 모드로 바꾸고 화장실에서 나올 때는 반드시 비행기 모드를 풀어야 합니다. 여기서 전화를 인터럽트 그리고 화장실 문에 들어간 상태를 임계 영역이라고 바꿔서 생각해봅시다. 이 영업 사원은 화장실에서 용무를 볼 때 전화가 오지 않으니 방해을 안 받습니다. 스핀락을 얻어 임계 영역을 실행 중에 인터럽트를 실행을 막는 상태입니다. 임계영역이 다음과 같은 코드 흐름일 때 임계 영역에서
ASUS에서 라즈베리파이 대항마(?)같은 것을 출시할 모양이네요.
By being nice to me | 2017년 1월 31일 |
![ASUS에서 라즈베리파이 대항마(?)같은 것을 출시할 모양이네요.](https://img.zoomtrend.com/2017/01/31/e0012966_589119548362c.jpg)
ASUS에서 라즈베리파이에 대항마(?)를 발표했군요. 그 이름하야 팅커보드. ASUS에 따르면 RPi3의 두배정도의 성능(긱벤치 기준)에 메모리도 2배, 4K와 HiRes 오디오 대응으로 보다 나은 AV기능을 갖추고 있으며 기가비트 이더넷과 더 상위버전의 블루투스를 내장하고 있다고 합니다. 보드 레이아웃도 딱 라즈베리파이 B같이 뽑은 것이 어쩌면 케이스도 호환될지 모르겠네요. 그러나 32bit만 지원되고 USB는 여전히 2.0이며, 해외매체에 따르면 4K가 지원은 되지만 실제 4K 영상물 제공 업체들의 DRM등은 어찌할 수 없어서 넷플릭스같은 것은 못볼거라고... 그리고 가장 큰 단점은...가격이네요. 라즈베리파이의 거의 두배의 가격으로 나올 것이라네요. 가격을 제하더라도 워낙에 라즈베리파이가
[라즈베리파이] 가상 파일시스템 동작 분석(유저 프로세스 입장)
By Guillermo Austin Kim | 2019년 1월 3일 |
이번에 유저 어플리케이션 입장에서 가상 파일시스템 동작을 살펴보겠습니다. 먼저 유저 공간에서 실행하는 다음 코드를 같이 작성해 봅시다.1 #include <stdio.h>2 #include <stdlib.h>3 #include <unistd.h>4 #include <sys/types.h>5 #include <signal.h>6 #include <string.h>7 #include <fcntl.h>89 #define FILENAME_NAME "/home/pi/sample_text.text"1011 int main() 12 { 13 int fd = 0;14 ssize_t read_buf_size;15 off_t new_file_pos;
[리눅스] 리눅스역사 알아보기(Linux History)
By Guillermo Austin Kim | 2019년 6월 16일 |
리눅스의 모태는 유닉스이므로 유닉스가 어떻게 탄생했는지 알아볼까요? 1.2.1 유닉스가 태어난 과정유닉스는 멀틱스라는 프로젝트로 시작됐습니다. 멀틱스 운영체제1965년 MIT, AT&T 벨 연구소, General Electric 소속 개발자들이 모여 멀틱스(Multics)라는 운영체제 개발을 시작했습니다. 이들이 구현하고자 하는 운영체제의 핵심 기능은 다음과 같았습니다. " 멀티 태스킹을 지원하는 운영체제를 구현하자!" 지금 4차 산업혁명 시대를 맞이하는 시점에서 멀티 태스킹은 운영체제의 기본 기능입니다. 하지만 1960년대 중반에는 놀라운 기능이었습니다. 당시 소프트웨어 기술 수준으로 한 개의 제품에 한 개의 소프트웨어만 돌리는 수준이었기 때문입니다. 하지만 여러 가지 노력에도 불구하