태그>linux(총 2050개의 글)
'linux' 관련 최근글
-
- 리눅스 커널 메일링 리스트 구독 따라해보기
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/23 22:26
4. 리눅스 커널 메일링 리스트 구독하기 리눅스 커널을 조금 더 분석하다 보면 다음과 같은 생각이 들 수 있습니다. 커널의 특정 서브시스템을 조금 더 깊게 알고 싶다. 실제 커널 개발자들은 어떻게 개발할까? 이를..
- 리눅스 커널 메일링 리스트 구독 따라해보기
-
- [리눅스커널] 워크큐: 워커 자료구조인 struct worker 구조체 알아보기
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/23 06:57
워커를 관리하고 저장하는 자료구조는 struct worker 구조체입니다. 이번 시간에는 struct worker 구조체 세부 필드를 분석하겠습니다. struct worker 구조체 분석하기 다음은 struct worker 구조체 선언부입니다.[https://elixir.bootlin.com/linux/v4.19.30/source/kerne..
- [리눅스커널] 워크큐: 워커 자료구조인 struct worker 구조체 알아보기
-
- 임베디드 리눅스 개발자 양극화를 극복하는 방법: 리..
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/21 18:29
제가 올린 포스팅 중 생각지도 않게 조회수가 높게 나올 때가 있습니다. 그 중 하나는 다음 포스팅입니다. 임베디드 개발자 양극화는 얼마나 심각할까? 댓글을 보면 알 수 있듯 많은 분들이 공감해주셨습니다. * 맞다! 임베디..
- 임베디드 리눅스 개발자 양극화를 극복하는 방법: 리..
-
- [리눅스커널] 가상파일시스템/파일객체: 파일 객체 함수 오퍼레이션
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/03 21:02
가상 파일시스템에서 파일 시스템 별로 파일을 열고 쓰고 읽는 함수 포인터 테이블을 지원합니다. 이 정보를 파일 함수 오퍼레이션이라고 하며 다음 해더 파일에 정의돼 있습니다.[https://github.com/raspberrypi/linux/blob/rpi-4.19.y/include/linux/fs.h]struct file_..
- [리눅스커널] 가상파일시스템/파일객체: 파일 객체 함수 오퍼레이션
-
- [리눅스커널] 가상파일시스템/소개: 함수 오퍼레..
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/03 20:58
이번 절에서 소개했듯이, 각각 파일 시스템에 액세스를 하기 위해서 먼저 가상 파일시스템에 접근합니다. 이 때 가상 파일 시스템에서 지원하는 4가지 객체에서 지정한 함수 포인터를 통해 파일 시스템 세부 함수에 접근합니..
- [리눅스커널] 가상파일시스템/소개: 함수 오퍼레..
-
- [리눅스커널] 메모리관리/디버깅: kmalloc() 함수로 메모리 할당 후 슬..
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/03 20:48
이번 소절에서는 가상주소를 물리주소로 변환하는 과정을 실습으로 알아봅시다. 3장 3.6 절에 소개한 rpi_debugfs.c 소스를 활용해 실습을 진행합니다. 먼저 rpi_debugfs.c 소스를 입력하고 커널 빌드를 하시기 바랍니다. 패치 코드 입력 방법 알아보기 먼저 입력할 패치 코..
리눅스커널, 리눅스, linux, kernel, linuxkernel
- [리눅스커널] 메모리관리/디버깅: kmalloc() 함수로 메모리 할당 후 슬..
-
- [리눅스커널] 메모리관리/디버깅: 가상주소를 물리주소로 변환 확인 실습
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/03 06:33
이번 소절에서는 가상주소를 물리주소로 변환하는 과정을 실습으로 알아봅시다. 3장 3.6 절에 소개한 rpi_debugfs.c 소스를 활용해 실습을 진행합니다. 먼저 rpi_debugfs.c 소스를 입력하고 커널 빌드를 하시기 바랍니다. 패치 코드 입력 방법 알아보기 먼저 입력할 패치 코..
리눅스, 리눅스커널, linux, linuxkernel, 라즈베리파이
- [리눅스커널] 메모리관리/디버깅: 가상주소를 물리주소로 변환 확인 실습
-
- [리눅스커널] 메모리관리/디버깅: ftrace로 메모..
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/01 18:52
ftrace에서 지원하는 kmalloc와 kfree 이벤트를 사용하면 kmalloc()와 kfree() 함수를 호출할 때 세부 정보를 알 수 있습니다. kmalloc 이벤트: kmalloc() 함수로 메모리 할당을 요청했을때 동작 ..
리눅스, 리눅스커널, linux, linuxkernel, kernel
- [리눅스커널] 메모리관리/디버깅: ftrace로 메모..
-
- [리눅스커널] 메모리 관리: 슬럽 오브젝트 해제하는 kfree() 함수 분석하기
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/01 18:42
kmalloc() 함수로 동적 메모리를 할당하고 난 후 사용하지 않으면 메모리를 반환해야 합니다. 이 때 kfree() 함수를 사용하면 됩니다. 이번 시간에는 kfree() 함수를 분석하면서 커널 내부에서 반환하는 동적 메모리를 어떻게 처리하는지 살펴보겠습니다.[https://github..
리눅스, linux, 리눅스커널, linuxkernel, 슬랩
- [리눅스커널] 메모리 관리: 슬럽 오브젝트 해제하는 kfree() 함수 분석하기
-
- [리눅스커널] 메모리 관리: kmalloc 캐시 슬럽 ..
-
Linux Kernel(4.19) Hacks by AustinKim|2019/09/01 17:46
우리는 'kmalloc() 함수를 호출하면 동적 메모리를 할당할 수 있다.'란 사실을 알고 있습니다. 하지만 kmalloc() 함수에서 호출하는 커널 내부 함수는 거의 분석하지는 않는 듯 합니다. 이번 시간에는 kmal..
linux, linuxkernel, slab, 슬랩, 리눅스커널
- [리눅스커널] 메모리 관리: kmalloc 캐시 슬럽 ..
-
- [리눅스커널] 스핀락 플러그인 함수: spin_lock_irq()/spin_unlock..
-
Linux Kernel(4.19) Hacks by AustinKim|2019/08/22 08:18
리눅스 커널 코드를 조금만 분석하면 spin_lock() 함수뿐만 아니라 spin_lock_irq() 함수를 써서 임계 영역을 보호하는 코드를 많이 볼 수 있습니다. 이렇게 커널은 스핀락 기능을 확장한 플러그인 형태 스핀락 함수들을 제공합니다. 이번 소절에서는 spin_lock() 함수..
- [리눅스커널] 스핀락 플러그인 함수: spin_lock_irq()/spin_unlock..