Melis3.0系统是全志科技面向数字媒体和IoT领域的轻量级物联网嵌入式实时操作系统,主打视频多媒体编,解,录周边产品应用。在整合内部开发资源的基础上, 与开源社区深度合作,致力建立服务于多媒体,语音的端侧基础设施平台. Melis3.0系统具备极致性能, 极简开发,富媒体,富组件,wireless连接,音/视频编解码等特点, 可广泛应用于多媒体播放器,行车记录仪,游戏模拟器,DVB机顶盒,儿童早教机,卡拉OK机, 传感器网络模组,智能家居等产品的开发.
支持多平台,多方案的多媒体架构
极简开发
网络服务
模块化设计
类微内核架构(混合内核),支持应用,驱动和中间件代码独立编译链接,映像高度压缩,不用时可卸载节省运存。
模块化要求内存管理支持二级页表设计。
高性能内核
按照内核和方案解耦的方式设计,当前基于zephyr,rt-thread双内核, 具备硬实时能力,核心架构良好,支持极小footprint的设备.
内存管理
支持slab内存管理算法,有效减少内存外部碎片。
支持虚拟空间动态创建,页面可支持4K大小
调度策略
在任何时候,系统执行有资格获得处理器的优先级最高的任务,在优先级相同的情况下,采用时间片轮转的调度策略. 这种调度策略有个简单的名字,叫做Round Robin(RR)调度策略
丰富的文件系统支持
支持常见文件系统格式,包括:
丰富的多媒体和GUI支持
集成全志CedarX2.7多媒体框架和OrangeGUI/MiniGUI图形框架,可支持中大规模多媒体录,编,解码产品的开发.
支持全部的常见音频格式,支持的视频解码格式包括:
等主流解码格式。
Posix兼容
支持Posix完整语义,面向MacOS,Unix,Linux可移植应用/中间件的跨系统移植.
设备管理
支持linux style的设备文件系统,所有设备以设备节点的方式向应用提供服务,应用通过标准化的接口open/read/write/ioctl/close对设备进行操作
1.下载交叉编译工具链:
或者执行: git clone https://github.com/caozilong/melis-toolchain.git
2.ToolChain的安装与配置:
进入到控制台程序,在$(HOME)(其它具备权限的目录也可,例如/opt)目录下创建tools目录 并把工具链包copy到此目录.
执行下图命令将工具链解压到当前目录下:
设置环境变量,执行如下命令将工具链所在目录加入到当前用户的PATH环境变量下:
设置完毕后,退出当前终端重新登录, 在新控制台下执行命令行
arm-melis-eabi-gcc -v
输出信息如下图所示,表示编译器安装正确:
3.获取Melis SDK源码:
略
4.配置melis sdk.
Melis的构建系统基于Linux Kbuild实现,执行进入到 ./src 目录,执行 make menuconfig
选用默认的配置,直接保存.config文件,即是D100 数字电视老人机方案.
5.编译melis sdk.
退出menuconfig菜单, 执行make melis (或者make, make all) 编译完整的SDK, 编译结束后,目标文件放置在./src/workspace/$(project) 目录下.