PUSH

Category
아이템: 
포스트 갯수2

[안드로이드] 시스템 데몬 부분 빌드

By Guillermo Austin Kim | 2018년 10월 4일 | 
안드로이드에서 리눅스 시스템 프로그래밍을 실습하고 싶을 때가 있습니다. android\system\core 폴더에서 simple_proc 폴더 하나를 생성합시다. android\system\core\simple_proc 다음과 같이 메이크 파일을 하나 작성한 후 android\system\core\simple_proc 폴더에서 Android.mk 이름으로 저장합시다.LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS) LOCAL_MODULE := test LOCAL_SRC_FILES := \ test.cpp \ LOCAL_MODULE_TAGS := optional LOCAL_FORCE_STATIC_EXECUTABLE := true LOCAL_STATIC_

ARM64- 스택 푸쉬(Stack Push) Userspace -> Kernel Space

By Guillermo Austin Kim | 2017년 12월 25일 | 
유저 스페이스에서 커널 스페이스로 전환하려면 시스템 콜을 호출해야 한다 것은 마르고 닳도록 들었죠?이번에는 ARM64 Architecture에서 EL0 ->EL1로 변환될 시, Stack을 어떻게 Push하는 지 살펴볼께요. "rild"란 프로세스의 콜스택을 예를 들어 볼 께요. 잘 보면, 유저 공간에서 sendto란 시스템 콜을 호출했다는 걸 알 수 있네요.-000|do_mem_abort()-001|el1_da(asm) -->|exception-002|ch_pop_remote_rx_intent()-003|glink_tx_common()-004|glink_txv()-005|ipc_router_glink_xprt_write()-006|msm_ipc_router_write_pkt(inline)-00