osv 添加自己的c++ app程序

来源:互联网 发布:软件设计师好过吗 编辑:程序博客网 时间:2024/06/17 14:46

cd ~/osv/apps

mkdir cpp-example

root@bamboo-VirtualBox:~/osv/apps/cpp-example# cat Makefile
module: hello_world.so
CFLAGS = -g -fPIC
CC = g++
%.o: %.cpp
        $(CC) -c $(CFLAGS) -o $@ $<


hello_world.so: hello_world.o
        $(CC) -shared -o $@ $^


clean:
        rm -f hello_world.so *.o

root@bamboo-VirtualBox:~/osv/apps/cpp-example# cat hello_world.cpp
#include <iostream>
using namespace std;
int main(){
        cout << "hello world!" << endl;
        return 0;
}

root@bamboo-VirtualBox:~/osv/apps/cpp-example# cat usr.manifest
/tools/hello_world.so: ${MODULE_DIR}/hello_world.so


root@bamboo-VirtualBox:~/osv/apps/cpp-example# cat module.py
from osv.modules import api


default = api.run('/tools/hello_world.so')



编译及执行

./scripts/build image=cpp-example

./scripts/run.py -nv --verbose


说明:osv的app类似于linux中的编译运行内核驱动,编译自己的模块,然后启动的时候注册运行(osv 本身就只有kernel space)

0 0