- 博客(22)
- 资源 (7)
- 收藏
- 关注
原创 liteos连接器脚本隐藏的指针问题
前面结合小熊派stm32L431的一个例子讲解了liteos在该实例中使用到的连接器脚本,大家对于编译出来的可执行程序以及烧录的位置以及最终的内存布局应该有了解了。在讲解前奏之前我们先解释一个前面遗留下来的一个问题,data段拷贝引起的指针的问题。我们知道在c语言中指针是数据的存储起始地址,前面我们提到data’段从0x0800xxxx拷贝到0x2000xxxx的位置,那么既然数据段data已经做了拷贝,我们访问的时候访问的是拷贝后的地址,这个时候指针应该变化了!!!但是为什么似乎我们在初始化好之后,可以直
2022-12-05 20:05:28
96
原创 华为liteos内存管理源码以及架构分析
华为liteos内存管理源码以及架构分析liteos内存管理概要牵扯到的主要数据结构liteos内存管理结构图liteos内存管理源码los_memoryc源码分析内存池的初始化内存分配内存释放liteos内存分配策略的优缺点liteos内存分配代码在平时工作中帮助解决bug华为liteos内存管理源码以及架构分析本文主要从源码层面讲解华为针对物联网的一个小型操作系统liteos的.........
2017-11-04 23:15:32
5667
原创 android binder进程间通信
1,常用进程间通信2,android binder进程间通信3,binder进程间通信原理我希望大家重点看看下面这段话,这是我理解的各种进程间通信的共通支出,毫不夸张我们甚至可以基于此,自己设计一套进程间通信的方式(实现通信就行,当然如果考虑效率,以及各种安全和细节因素,我还是比较菜的)。比如在内核自己注册一个字符设备(在读写等操作函数里面实现好同步),然后两个应用程序,一个读,一个写这样就实现了最
2016-03-23 17:36:30
527
原创 android消息循环
android消息循环的形象描述 android消息循环的本质以及原理(pipe) 例子巩固 推荐博文android消息循环的描述android系统有一个核心的特点,那就是android的每一个应用程序都有一个消息队列,每一个应用程序的主线程(ActivityThread)不断地从这个消息队列里面取出消息(looper消息循环),然后由对应的回调函数处理(回调函数用Handler注册)。说白了
2016-03-15 14:58:54
541
原创 python网路爬虫
网络爬虫一个爬虫源码源码分析一,网路爬虫这篇博客简单的实现了一个网路爬虫脚本,所谓网路爬虫就是从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。二,一个爬虫源码下面就是一个简单地网络爬虫程序#!/usr/bin/env python#filename:crawle.pyi
2016-03-04 22:47:17
675
原创 android hal层学习笔记
android hal层分析hal层接口定义JNI接口注册 aidl文件定义java访问硬件的接口硬件访问service的注册android应用程序中访问service操作硬件相关原理hal层接口定义(硬件抽象层)硬件抽象层是google为了满足各个厂商不想公开源码而又不违背GPL规定的一种方式,我们在这里讲解如何添加hal层,当然我们这里为了简化没有实际的访问硬件,我在这里用一个变量
2016-03-03 22:42:50
1818
原创 python GUI编程
最近开始由于项目需要开始接触python,感触良多,python是一种十分精简的语言,既符合面向对象,又有很多开源的库可以借鉴,非常的方便下面我这里讲一下python GUI编程,当然这是最简单的了:一,环境配置安装python 环境:sudo apt-get install python 安装下面几个wx库: sudo apt-get install python-wxgtk2.8 pytho
2016-02-02 17:48:38
1036
原创 scratch图形化编程操作硬件
一,简介scratch是一款又麻省理工开发的图形化编程软件,这款软件提供了可以使用javascript与scratch交互的接口,同时提供了一个socket端口和一系列的命令与应用程序交互,这里我们讲解如何通过python与scratch交互二,说明之所以选择python是主要基于以下几个原因: 1,python是非编译性语言,所以除非库的提供者将不想开源的代码写在C/C++,或者java等编译性
2016-02-02 17:11:02
18631
1
转载 10个经典C语言面试基础算法
下面这10个算法基础题可以看一下1、计算Fibonacci数列Fibonacci数列又称斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21。代码如下:/* Displaying Fibonacci sequence up to nth term where n is entered by user. */#include <stdio.h>int main()
2016-02-01 10:12:26
673
原创 用python调用C/C++的两种方式
方式一:使用python库带有的distutils.core例如下:mysetup.c#include <Python.h>static PyObject *say_hello(PyObject*self){ printf("hello world!\n"); Py_RETURN_NONE;}static PyObject *calc_pv(PyObject *self,PyO
2016-02-01 09:49:58
658
原创 使用tornado实现本地聊天室
使用tornado实现简单地本地聊天室1.开发环境2.tornado源码下载以及编译安装3.聊天室全部源码4.使用说明1.开发环境(1)本例程是在ubuntu12.04上面实现的 (2)python解析器是2.7版本: 在有网络的情况下可以:sudo apt-get install python 在没有网络的情况下可以从这个链接下载: pyth
2016-01-12 12:36:14
848
原创 Android Input子系统浅谈
Android Input子系统浅谈本文主要讲解[Android Input 子系统][6],我会从一下几个方面讲解:linux kernel的input子系统框架以触摸屏驱动为例讲解内核input子系统Android framework层Input子系统的框架Input子系统的应用程序接口linux kernel的Input子系统框架
2016-01-11 15:30:34
1562
原创 android Audio机制
android Audio机制ALSAtinyalsaAudioflingerAudioPolicyService前言这篇文章是最近自己学习android audio的学习心得,希望大牛提出宝贵意见。本文内容基于android 5.0目录一. 硬件架构(1).编解码器(codec) 二. 软件架构(1).
2015-11-23 16:25:58
4365
1
四轮车遥控避障寻线演示程序
2011-08-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人