Arm Linux Kernel Hacks

rousalome.egloos.com

포토로그 Kernel Crash


통계 위젯 (화이트)

693
557
422265


태그 : Kernel 요약보기전체보기목록닫기

이전 11 12 13 14 15 16 17 18 19 20 다음

[안드로이드][리눅스커널] 시그널 - 유저 공간 abort(SIGABRT) 시 동작 시 흐름!

유저 공간에서 zygote가 강제 종료되면서 부팅을 못하는 상황입니다. 커널 로그로 아래 메시지를 볼 수 있습니다.아래 로그는 init 프로세스가 zygote에 SIGABRT(6) 시그널을 전달해서 zygote를 종료시키고 있습니다.[   46.116831 / 01-02 01:20:24.859][0] init: Service 'zygo...

[라즈베리파이] 시스템 콜 - ARM 프로세서 관점 시스템 콜 처리

리눅스 시스템에서 시스템 콜을 관련 코드를 읽다보면 어셈블리 코드를 만나게 됩니다. 보통 어셈블리 코드는 ARM 프로세서 입장에서 실행하는 동작입니다. 어셈블리 코드로 구현돼 있다는 것은 시스템 콜이 아키텍처(ARM, x86) 동작과 연관이 있다는 볼 수 있습니다. 라즈베리파이는 ARM 아키텍처에서 구동하므로 ARMv7(Aarch32,...

[리눅스커널] 시스템 콜 - 전체 흐름도 소개

이전 절에서 시스템 콜의 개념을 알아봤습니다. 시스템 콜 흐름도와 시스템 콜 동작은 그리 간단하지 않습니다. 시스템 콜 세부 동작을 알려면 시스템 전체 흐름도를 이해해야 합니다. 이어서 리눅스 전체 시스템에서 시스템 콜이 무엇인지 살펴보겠습니다. 시스템 콜 전체 세부 흐름도 파악하기다음 그림은 이번 장에서 다룰 전체 시스템 콜 흐름도입...

[리눅스커널] 시스템 콜 소개

시스템 콜은 유저 모드에서 커널 모드로 진입하는 동작입니다. 시스템 콜은 다른 관점으로 유저 공간과 커널 공간 사이 가상 계층이자 인터페이스입니다.유저 공간과 커널 공간 소개그렇다면 여기서 말하는 유저 공간과 커널 공간이란 무엇일까요? 리눅스에서는 실행 공간을 메모리 접근과 실행 권한에 따라 유저 공간과 커널 공간으로 분류합니다. 먼저 커널 공...

[라즈베리파이] 시스템 콜(시스템 호출)은 왜 필요하나?

시스템 콜은 유저 모드에서 커널 모드로 진입하는 동작입니다. 다른 관점으로 시스템 콜은 유저 공간과 커널 공간 사이 가상 계층이자 인터페이스라고 볼 수도 있습니다. 이 계층은 다음과 같은 특징이 있습니다.1. 시스템 안정성과 보안을 지킬 수 있습니다. 유저모드에서 어플리케이션이 커널 공간에 아무런 제약없이 접근한다고 가정합시다. 실수로 어플리케이션이 커...

[리눅스커널] 프로세스: 커널 프로세스 생성 시 _do_fork() 함수의 흐름

커널 프로세스를 생성할 때도 _do_fork() 함수를 호출합니다. 그럼 커널 프로세스란 무엇일까요? 커널 프로세스란 시스템 콜 없이 커널 함수로 생성되어 커널 공간에서만 실행되는 프로세스를 의미합니다. 커널 프로세스의 대표적인 예로 커널 스레드를 들 수 있습니다. 커널 스레드는 커널 공간에서 시스템 리소스(메모리, 전원) 관리를 수행합니다.* 유튜브 ...

[라즈베리파이] 프로세스: 커널 스레드는 어떻게 생성하나?

[리눅스커널] Process - 프로세스, 경량 프로세스, 스레드 소개

프로세스라는 개념은 모든 멀티프로그래밍 운영체제의 기본입니다.프로세스는 실행중인 프로그램의 인스턴스로 정의할 수 있는데, 16명의 유저가 vi를 동시에 실행하면 각각 16개의 프로세스가 존재합니다. (물론 vi 코드는 동일한 것을 공유할 수 있습니다). 리눅스 코드에서는 프로세스를 태스크(task)나 쓰레드(thread)라고 부릅니다.프로세스,...

[리눅스커널] 워크큐(Workqueue) - 딜레이워크(delayed_work)는 어떻게 실행하나?

딜레이 워크를 실행하려면 어떤 함수를 호출해야 할까요? schedule_delayed_work() 함수를 실행하면 됩니다.먼저 딜레이 워크를 실행하는 드라이버 코드를 예제로 열어 보겠습니다.[https://elixir.bootlin.com/linux/v4.14.43/source/drivers/mmc/host/bcm2835.c#L651]1 static2 ...

[라즈베리파이] 워크큐(Workqueue) - worker_thread() 함수 분석(3)

Contents of tableworker_thread() 함수 분석(1)worker_thread() 함수 분석(2)worker_thread() 함수 분석(3) 이번에는 worker_thread() 함수에서 가장 중요한 37번 줄 코드를 분석할 차례입니다. 위 그림에서 워커 쓰레드의 “실행” 단계입니다. 코드를 봅시다.37 do {38...
이전 11 12 13 14 15 16 17 18 19 20 다음