1. 선입선처리 스케줄링 (FCFS) - First Come First Served - 이름 그대로 먼저요창한 Process가 CPU를 먼저 할당받는 스케줄링 기법이다. ( FIFO Queue를 통해 쉽게 구현이 가능하다. Ready Queue를 그대로 이어받는다. ) - 먼저들어온 Process의 처리시간이 길다면 나머지 Process들의 대기시간이 길어질 수 있다. ( 상황에따른 변동폭이 매우 큰편이다. ) - 비선점형 스케줄링 알고리즘이다. ( 새로 준비완료된 Process가 이미 CPU를 할당받은 Process의 CPU를 선점할 수 없다. ) 2. 최단 작업 우선 스케줄링 (SJF) - Short Job First - 이름 그대로 Burst Time(쉽게말해 수행시간)이 가장적은 Process에게..
안드로이드 Application에서 Log.i 와 같이 로그를 출력할 때가 있다. 이럴 경우 안드로이드 스튜디오 상에서는 바로바로 확인이 가능하지만 Frida를 이용한다던지 동적디버깅을 진행한다던지 할 경우 마땅히 바로 확인할길이 없다. 따라서 adb의 logcat기능을 활용하여 로그정보를 확인하는 방법을 소개한다. [ 명령어 ] adb logcat -v threadtime -d *:v > [ File Name ] >> 이 경우 해당 로그기록을 Windows의 파일로 리다이렉션한다. >> 따라서 Ctrl + F 를 통해 내가원하는 키워드를 찾아낼 수 있어서 편리하다. adb logcat -v threadtime >> 이 경우에는 로그기록을 실시간으로 모니터링하기위해서 사용한다. adb logcat -v ..
Frida는 Android 이외에도 IOS, Windows 등등을 Hooking할 수 있는 강력한 툴이다. 그러나 해당 포스팅에서는 Android에 한해서 Hooking하는 방법에 대해서 다루겠다. ( 물론 아주 기초적인 내용이며 이를 응용하는건 본인의 몫... ) 우선 들어가기 앞서 다양한 frida 코드들이 공유되는 사이트를 소개한다. https://codeshare.frida.re/browse Frida CodeShare 19 | 39K Android SSL Re-Pinning, more information can be found here https://techblog.mediaservice.net/2017/07/universal-android-ssl-pinning-bypass-with-frida..
Frida 설치 1. 파이썬 다운로드 ( 이왕이면 Python3로 설치하자 ) 2. pip install frida==12.7.11 - 예전에는 frida에 전부 포함되어 있었지만 최신 버전에서는 frida-tools로 분리되어 추가로 다운로드해야 frida 및 frida-ps 등의 기능을 이용할 수 있다. ( frida.exe, frida-ps.exe 등이 포함되어 있다. ) 3. pip install frida-tools 4. https://github.com/frida/frida/releases 에서 frida-server 다운로드 받기. - 핸드폰의 아키텍쳐를 확인하여 다운로드 받는다. - 확인법 : Bit : adb shell getprop ro.product.cpu.abi Type : adb ..
CPU 스케쥴링 ? CPU를 여러 프로세스간에 교환함으로써, 효율을 올린다. ( 동시에 동작하는 것과 같은 효과 ) 스케쥴링에는 프로세스 스케줄링과 스레드 스케줄링이 있다. 우선, 메모리내에 여러 프로그램이 할당되어 유지되어야 한다. 그리고 특정 프로세스가 실행중 대기해야할 경우, 그 프로세스로부터 CPU를 회수해 다른 프로세스에 할당해준다. 이 때, 대기해야할 경우에는 대표적으로 입력요청이 있다. → Context Switching이 발생한다. ( Dispatcher 호출 ) 위와같이 CPU가 유휴상태가 되면, 운영체제는 Ready Queue에 있는 Process중 하나를 선택해 실행한다. 이 때 어떤 Process를 실행할지 결정하는 것이 단기 스케줄러이다. ( 장기 스케쥴러는 디스크에 저장되어 있는..
보호되어 있는 글입니다.