Thanks to visit codestin.com
Credit goes to github.com

Skip to content

converse2006/M2M

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[M2M Simulation Framework: M2M-Sim]
/*  
 * Copyright (C) 2012 PASLab CSIE NTU. All rights reserved.
 *      - Chen Chun-Han <[email protected]>
 */

[Introduction]
This is a simulation framework support M2M application based on QEMU emulator
Currently we support Zigbee/802.15.4 network simulation and we varify our result
with other paper achieve 99% accuracy and 18 times speedup comare to real platform execution


[Experiment Setup]
Step 1. Copy pure userdata-qemu.img to "android.paslab/out/target/product/generic/"
[NOTE 1]Based on Device number, you need to copy userdata-qemu.img as many as device number
        and rename each .img, i.e userdata-qemu1.img userdata-qemu2.img ...
[NOTE 2]This part could write a simple script to achieve those thing
        "android.paslab/out/target/product/generic/copy.sh" is a example
        
Step 2. Compile the emulator at "android.paslab/external/qemu-paslab"
[NOTE 1] the command "mm" and please make sure the enviroment variable
         is setup by "source /where/you/place/floder/android.paslab/build/envsetup.sh"
         To me, the command is "source /home/converse/ANDROID/m2m_android/android.paslab/build/envsetup.sh"
         I recommand you add this command into your ~/.bashrc to avoid you ignore type in

[NOTE 2] PLEASE "DO NOT" mm/make at "android.paslab", it will take you vary long time,if need.

Step 3. Open emulator
[NOTE 1]The binary will locate at "android.paslab/run_android.sh"
[NOTE 2]If you are not my total source code(i.e. only my qemu source code), 
        please add this command after "-sdcard ./tmp_sd \" at "run_android.sh"
        "-data $PWD/out/target/product/generic/userdata-qemu$1.img \ "
        this command is used to indicate which userdata-qemu.img be choosed to run android file system
        we create at Step 1
[NOTE 3]Run emulator command = "./run_android.sh #num" (If open device 1: ./run_android.sh 1)

Step 4. Wait for system boot up

Step 5. Compile your program which want to execute on emulator
[NOTE 1]You need specific the topology file (at "qemu-paslab/m2m_app/topology.conf")
[NOTE 2]M2M Application always place in "qemu-paslab/m2m_app" floder, so if you create
        a new scenario/program, just create a new folder in "qemu-paslab/m2m_app"
        If you don't know how to use the Network Common API, just Reference demo0X/
[NOTE 3]After cross-compile,push your binary to emulator data space(i.e. push.sh)
        "adb -s emulator-#emulator-num push your-binary /data"
        for example "adb -s emulator-5554 push vnd_api /data"
[NOTE 4]network_device.c have a macro "Netoff", this macro is used to disable trigger network communcation API.
        When used this macro, device WILL NOT malloc shared memory but VPMU STILL WILL write time into shared memory.
        So,You also need to mark #define CONFIG_VND 1 => //#define CONFIG_VND 1
        
Step 6. Execute your application 
[NOTE 1] "cd data;./vnd_api 1 lin.jpeg out.jpeg; cd ../"
[NOTE 2] PLEASE run "ZC" as FIRST (Because ZC need initial shared memory)
[NOTE 3] "IMPORTANT" if program will not use Network_XXX API, 
         please mark android/config/linux-x86/config-host.h
         #define CONFIG_VND 1 => //#define CONFIG_VND 1 
         or you will cause system crash!!!

Step 7.Get Performance result and Log data
[NOTE 1] Peformance data will show up after Network_Exit() is called
[NOTE 2] Log data place at "android.paslab/NetLogs", if you have define M2M_LOGFILE
         at "hw/m2m_internal.h"
         The log file compose two type:
         (1) Log send/recv event => Only Coordinator/End device have (i.e. device#num.txt)
         (2) Log route event     => Only Coordinator/Router have     (i.e. Routedevice#num.txt)

===========================================================================================

[Original Android Emulator README]
This package contains the sources to the Android emulator program.

This program emulates a virtual ARM board that can be used to run Android
system images on a typical developer machine. To do so, you'll need additionnal
files provided with the public Android Software Development Kit (SDK).

To download them, go to http://code.google.com/android/

Emulator-specific documentation is available at the following page:

    http://code.google.com/android/reference/emulator.html

Please read the INSTALL file to see how you can rebuild the emulator, or
build a source distribution package tarball.

Read the CHANGES.TXT file to see what important changes were added since
the last release.

Note: This program is distributed under the terms of the GNU General Public
      License, which exact licensing conditions are available in the COPYING
      file found within this package.

- Android Emulator Team

About

No description, website, or topics provided.

Resources

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE
GPL-2.0
COPYING
LGPL-2.1
COPYING.LIB

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages