硬件搭建起来能进入系统,首要就是测试内存的稳定性,需要一款内存测试工具。
一般都是选择memtester这款Linux软件,下载地址如下:http://pyropus.ca/software/memtester/
把memtester解压到Android/external/下(此文默认读者已有Android SDK)
-----------------------------------------------------------------------------------------------------------------------------
移植:
1:分别把conf-ld和conf-cc文件中的"cc"(一般在文件首行)替换成“arm-linux-androideabi-gcc”
2:编写Android.mk,代码如下:
按 Ctrl+C 复制代码 LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := memtester.c tests.c
LOCAL_MODULE := memtester
LOCAL_C_INCLUDES := $(LOCAL_PATH)
#LOCAL_MODULE_PATH := output path of module!
include $(BUILD_EXECUTABLE)
Line 1:返回当前路径;Line 2:清除LOCAL_XXX变量;Line 3:编译模块源码文件;
Line 4:模块输出名字;Line 5:额外的C头文件;Line 6:生成编译模块的路径;
Line 7 生产可执行文件(亦可是库,根据变量而定)。
Line 1 2 3 4 7是Android.mk最基本的模板。
到此移植完成!
-----------------------------------------------------------------------------------------------------------------------------
编译:
cd android,source build/envsetup.sh,lunch对应的平台
mmm android/external/memtester-xxx ("xxx"为你的memtester版本)
最终在/system/bin生成可执行文件memtester!
以下是自己的Java执行memtester过程:
主文件:
package com.example.ddr;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import android.app.Activity;
import android.content.Context;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
public class MainActivity extends Activity {
private static final String TAG = null;