SSE3052: Embedded Systems Practice - AndroBenchcsl.skku.edu/uploads/SSE3052S19/01-intro.pdf ·...

Preview:

Citation preview

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice

Jinkyu Jeong

jinkyu@skku.edu

Computer Systems Laboratory

Sungkyunkwan University

http://csl.skku.edu

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 2

X11 forward

• You have to connect to server

– $ssh –X [UserID]@[IP address]

• UserID

– esp[1-5]

• IP address

– A: 115.145.208.227

– B: 115.145.208.228

esp1 esp2 esp3 esp4 esp5

X X X 김성윤 박세진 X 송민찬 신준호 X 정유석 정진섭 X 주상현 X X

A B A B A B A

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 3

Environment Setup

• (Virtual) Device

• Compiler

• Kernel

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 4

Environment Setup

• (Virtual) Device

– Download Android Studio

– Create an AVD (Android Virtual Device)

• Compiler

• Kernel

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 5

(Virtual) Device

Install required libraries

1. Open Terminal. (Ctrl + Alt + 't')

2. sudo apt-get install libc6:i386 libncurses5:i386

libstdc++6:i386 lib32z1 libbz2-1.0:i386

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 6

(Virtual) Device

Download Android Studio

– Go to https://developer.android.com/studio.

– Download.

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 7

(Virtual) Device

1. $cd ~/Downloads

2. $mv android-studio-ide-182.5314842-linux.zip [Yo

ur Workspace]

3. $unzip android-studio-ide-182.5314842-linux.zip

4. $cd android-studio/bin

5. $./studio.sh

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 23

(Virtual) Device

Create an AVD (Android Virtual Device)

– (Menu) Tools –Android –AVD Manager

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 31

Environment Setup

• (Virtual) Device

• Compiler

• Kernel

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 32

Compiler

1. cd ~

2. git clone https://android.googlesource.com/platfo

rm/prebuilts/gcc/linux-x86/x86/x86_64-linux-andro

id-4.9

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 33

Environment Setup

• (Virtual) Device

• Compiler

• Kernel

– Download source code

– Build

– Run

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 34

Kernel

Download source code

1. git clone https://android.googlesource.com/kernel

/goldfish

2. cd goldfish

3. git checkout –b android-goldfish-3.10 origin/andr

oid-goldfish-3.10

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 35

Kernel

Build

1. export ARCH=x86_64

2. export CROSS_COMPILE=~/x86_64-linux-android-4.9/b

in/x86_64-linux-android-

3. make x86_64_ranchu_defconfig

4. make -j4

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 36

Kernel

Run

1. cd ~/Android/Sdk/system-images/android-24/google_

apis/x86_64

2. mv kernel-ranchu kernel-ranchu.bak

3. cp ~/goldfish/arch/x86/boot/bzImage kernel-ranchu

4. (Run!)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu)

SSE3052: Embedded Systems Practice, Spring 2019, Jinkyu Jeong (jinkyu@skku.edu) 39

Questions?

Recommended