[라즈베리파이] 시스템 콜 - 시스템 콜 핸들러 실행을 마무리하면 어떤 동작을 할까?
By Guillermo Austin Kim | 2018년 11월 27일 |
시스템 콜을 수행하면 시스템 콜 핸들러를 통해 가상 파일시스템이나 커널 프로세스 함수를 실행합니다. 이후 시스템 콜 종류에 따라 시스템 콜 핸들러 하부 루틴을 수행하고 유저 공간 복귀합니다. 시스템 콜 실행 후 복귀할 때 ret_fast_syscall 레이블에서 리눅스 커널 시그널 및 스케줄링 관점에서 중요한 동작을 실행합니다. 시스템 콜 테이블을 통해 시스템 콜 핸들러를 분기하기 직전 다음 1번째 줄 코드와 같이 복귀 레지스터(r14, lr)에 ret_fast_syscall 레이블을 지정했습니다. [https://elixir.bootlin.com/linux/v4.14.70/source/arch/arm/kernel/entry-common.S]1badrlr, ret_fast_syscall@ retu
리눅스 bash 스크립트에서 배열/연관배열 초기화
By 반달가면 | 2022년 8월 3일 |
bash 스크립트에서 사용중이던 배열(array) 또는 연관배열(associative array)의 모든 원소를 삭제하고 싶다면 빈 배열을 할당하면 된다. x[0]='abc' x[1]='def' # x 초기화 x=() 연관배열도 동일하다. declare -A a_x a_x[abc]=1 a_x[aaa]=2 # a_x 초기화 a_x=() 배열의 사용에 대한 추가적인 내용은 아래의 링크를 참고하자.
라떼판다 알파, 타이탄케이스 도착
By 잉여 Says | 2018년 12월 26일 |
드디어 왔네요. 통관시에 기본 가격 약 35만원에 대한 부가세와 통관 수수료 약 1만4천원을 합해 약 5만원을 납부했습니다. 통관 수수료가 생각보다 비싸서 놀랐어요. =_= 케이스는 그럭저럭 잘 뽑아낸 것 같습니다. 팬 구멍을 기준으로 위,아래 양 쪽 모두 케이스 전체를 분리하지 않고도 GPIO에 접근할 수 있도록 부분적으로 분리가 됩니다. 라즈베리파이와 크기 비교입니다. 1세대 라떼판다보다는 30% 정도 더 커진 느낌입니다. 퍼포먼스는 딱 스펙만큼 나올테니 따로 테스트할 가치가 없는 것 같고, 조립 후에 세팅좀 하다가 만져 보니 케이스 겉까지 제법 따끈따끈하네요. 프로세서에 장착된 기본 팬은 항상 돌지 않고, 바이오스에서 지정한 온도 이상으로 온도가 상승했을 때에만 돌아가도록 되어 있습니
[라즈베리파이] 커널 타이머(Kernel Timer) - jiffies란
By Guillermo Austin Kim | 2018년 7월 18일 |
jiffies는 커널 타이머를 실행하는 시간 단위입니다. 공학 용어로 Resolution이라고 합니다. jiffies를 지피스라고도 하는데 리눅스 커널에서 쓰는 jiffies란 용어를 그대로 쓰겠습니다. jiffies 개념을 이해하려면 HZ에 대해 배워야 합니다. 그럼 HZ는 뭘 의미할까요? HZ는 1초당 커널 타이머가 동적 타이머를 처리하는 횟수를 의미합니다. 그래서 커널 타이머의 실행 빈도는 HZ에 의해 정해집니다. 커널 타이머가 로컬 타이머를 처리하는 단위라고 말할 수 있습니다. HZ가 500이면 1초당 jiffies가 500번 +1만큼 증감하고 500번 커널 타이머가 실행합니다. 그럼 HZ가 크면 좋은 시스템일까요? 그렇지는 않습니다. HZ를 너무 큰 값으로 설정하면 시스템 과부하가 걸릴 수 있