- 博客(895)
- 资源 (57)
- 收藏
- 关注

原创 linux 遇到的内核异常问题分析解决汇总
这些年曾经遇到过一些比较棘手的linux 异常问题,遗憾的是很多时候没有及时更新总结,导致我自己再次遇到的时候也要靠网络搜索相关文章去回忆解决办法,本文会持续更新,逐步完善linux 崩溃异常解决问题办法。 linux 崩溃异常无非是死锁,空指针,访问非法区域等问题,通常一般的方法,用静态的分析方式可以解决问题,实在比较复杂的情况只能用KGDB的等方式来解决。 为了方便调试和测试代码,内核提供了许多与内核调试相关的配置选项。这些选项大部分都在内核配置编辑器的内核开...
2020-08-04 14:47:07
1920
原创 优快云手机APP终于可以写博客了
随着年龄增长,博客是更新的越来越慢了,在公司没时间,现在在路上时间挺多,当时想着APP能写博客就好了,记得开始事不可以的,如今这时代,回到家开电脑逛论坛的时间真少了。希望以后可以在上下班路上写一些东西。...
2021-09-24 07:17:47
1372
3
原创 记录调试Android 休眠唤醒过程中遇到的问题以及解决办法
最近在调试休眠唤醒,遇到不少问题,现在记录下解决问题问题的过程。1、休眠或者唤醒过程中内核异常 具体解决办法,请看这篇linux 遇到的内核异常问题分析解决汇总2、休眠过程中唤醒 调试的时候发现,本来Android 系统已经休眠下去,CPU已经暂停运行,但是串口log记录一段时间发现有时候内核log会重新打印,一些驱动重新resume了,或者有时候休眠到一半,系统又被唤醒了,log 大概如下:[2020/8/9 6:46:31] [ 2956.891633] P...
2020-08-10 09:22:15
4911
2
原创 MIPI lcd屏幕调试方法总结
以前工作都比较忙,很少写总结性的东西了,现在有空就写写吧。 mipi 时钟比较高,一般的小公司示波器是没法测试到波形的,此时必须注意步骤,否则会因为某些小细节而搞好几天甚至更久。1、保证MIPI lcd 的各路电压都正常,如果有条件,测试mipi 时钟以及各个数据通道的正负线波形;2、保证复位引脚时序正常;3、找一款已经成功验证过的MIPI 屏幕驱动程序来修改;4、保证MIPI 屏幕各项设置参数以及MIPI接口参数设置函数是对的;5、保证lcd 的dclk 设置正...
2020-06-28 10:07:41
5757
3
原创 关于如何降低wifi 功耗
最近在调试wifi,以前都是基于Linux Android之下调试,要么是做的相对完善,只是了解一个大概情况,要么就是对功耗要求不高,直接用就可以了。现在用在一个非标的系统上,并且电池较小,对功耗要求挺高,于是就花了点时间看了一下802.11 协议,现在把wifi 降低功耗办法总结一下。1、在wifi 没有连接AP的时候,休眠时候可以直接给wifi 下电,唤醒重连和是否下电时间没什么差距,这种wifi 休眠模式最低,但是连接时间最长;2、进入深度休眠,断开AP,但是不对wifi进行下电...
2020-06-01 16:14:34
3984
原创 Linker Scripts SECTIONS 部分的一个疑问
在M4 里面Linker Scripts 看到有如下部分描述SECTIONS{ .AppinInfo : { KEEP(*(.AppinInfo)) }>FLASH = 0xff}一直没搞明白 这个= 0xff 是什么意思,相关中文网是找遍了也没这部分解释,于是只能找老外的网站了,尤其是要找到官方资料。https://sourcew...
2019-11-20 10:17:55
626
原创 [-Wunused-but-set-variable]和[-Wunused-variable]的区别
公司严格要求,要求把警告全部消除才算是合格代码,于是打开gcc -Wall 有两个警告很像。warning: unused variable 'ucRet' [-Wunused-variable]warning: variable 'Attr' set but not used [-Wunused-but-set-variable]开始以为是一样的,直接屏蔽Attr就出错了...
2019-11-19 14:58:27
5143
原创 在Linux 下开发cortex M3 是什么感觉?
这几天,公司让去windows环境下用gcc 编译cortex M3的代码,囧。开始还真是有点摸不着头脑,后面发现已经做好了很多各种gcc的exe版本工具链,稍微修改一下Linux 下的Makefile就可以在window下 用bat 文件调用make.exe 编译了。不过真的没Linux强大,有时候报错也牛头不对马嘴,编译速度也是有点慢。既然都是编译器,那把cortex M3 代码用L...
2019-10-29 17:11:25
977
原创 warning: jobserver unavailable: using -j1. Add `+' to parent make rule问题怎么解决
最近在整windows 下的gcc 工具链编译,发现bat 调用make -j4 会有如下警告warning:jobserverunavailable:using-j1.Add`+'toparentmakerule,以为是windows 下make 不支持多核编译的原因,但是今天我把同一份代码放到ubuntu下 编译,一样的警告,并且ubuntu 编译别的Linux ...
2019-10-29 16:49:41
4635
1
原创 cmake 从入门到放弃
以前在Linux下看过一些auto make 工具生成的Makefile,感觉生成的Makefile有一个原则,就是死命让人看不懂,显得很高深莫测,我不甘心,一些网友又给我推荐cmake,搜索一下果然是吹的神乎其技,并且说大型工程,自己手工写Makefile的人就是SB。于是我就整起来,开始在windows下整,遇到一些问题始终很奇怪,解决不了,于是还是在ubuntu下来搞吧。 ...
2019-10-22 20:27:31
2341
2
转载 C语言和设计模式(总结篇)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】设计模式的书相信很多人都看过。对于设计模式这样一种方法,相信不同的人有不同的理解。我在这里写的博客只是我个人对设计模式的粗浅认识。文中肯定存在很多的不足和不成熟之处,希望朋友们谅解。望大家多多指正,谢谢!01)C语言和设计模式(继承、封装、多态)02)C语言和设计模式(访问者...
2019-10-16 10:43:48
887
转载 cortex M3 系统svc 系统调用
STM32 SVCall一个特殊的中断:SVCall简述:一种由程序进行触发的中断,默认开启起源:SVC(系统服务调用,亦简称系统调用)多用于在操作系统之上的软件开发中。SVC 用于产生系统函数的调用请求。例如,操作系统不让用户程序直接访问硬件,而是通过提供一些系统服务函数,用户程序使用 SVC 发出对系统服务函数的呼叫请求,以这种方法调用它们来间接访问硬件。因此,当用户程序想要控制特...
2019-10-12 19:58:20
4260
3
转载 linux文件描述符限制及使用详解
背景最近调试一款网关设备,它部署在客户端和服务端之间。在工作时,它同时接收来自客户端的连接,同时又向服务端建立连接。网关在完全接收来自客户端的数据后,会校验数据合法性,只有数据合法,网关才会向服务器建立连接并转发数据。这样,当存在一个客户端和服务端的通信时,网关有可能需要同时建立两个连接,占用两个fd。这对网关的数据处理能力提出了较高的要求。在调试中出现的现象是,当客户端以较多的并发...
2019-10-09 09:52:48
461
原创 htonl/htons以及ntohl/ntohs等函数使用说明
htonl/htons以及ntohl/ntohs等函数都是为了解决主机和网络字节序不同而实现的函数,不同的是使用情况不同:htonl/htons用在主机设置相关参数到网络之前,ntohl/ntohs是从网络读出参数到主机之前。#include <arpa/inet.h> uint32_t htonl(uint32_t hostlong); ui...
2019-09-17 19:05:24
1871
原创 int socket(int domain, int type, int protocol); domain AF_UNIX,PF_UNIX, AF_LOCAL,AF_NETLINK等了解
#include <sys/socket.h> int socket(int domain, int type, int protocol); 函数里面domain 的值有如下 Name Purpose Man page AF_UNIX, AF_LOCAL ...
2019-09-11 17:48:02
3424
2
原创 各种进程间通信效率比較以及使用注意事项
各种进程间通信效率比較类型 无连接 可靠 流控制 记录消息类型 优先级 普通PIPE N Y Y N 流PIPE N Y Y N 命名PIPE(FIFO) N Y Y N 消息队列 N Y Y Y 信号量 ...
2019-08-19 16:56:33
3051
转载 结构体(或者联合体)变量的成员在内存里是如何分布的
结构体(或者联合体)变量的成员在内存里是如何分布的1.概述结构体变量的成员在内存里是如何分布的、成员先后顺序是怎样的、成员之间是连续的还是分散的、还是其他的什么形式?这些问题既和软件相关又和硬件相关。所谓软件相关主要是指和具体的编程语言的编译器的特性相关,编译器为了优化CPU访问内存的效率,在生成结构体成员的起始地址时遵循着某种特定的规则,这就是所谓的结构体成员“对齐”;所谓硬件相关主要...
2019-08-15 17:47:58
610
转载 谨慎使用多线程中的fork
谨慎使用多线程中的fork2015-02-07 19:23 by origins 转自https://www.cnblogs.com/liyuan989/p/4279210.html前言在单核时代,大家所编写的程序都是单进程/单线程程序。随着计算机硬件技术的发展,进入了多核时代后,为了降低响应时间,重复充分利用多核cpu的资源,使用多进程编程的手段逐渐被人们接受和掌握。然而因为创建一...
2019-08-05 14:16:42
444
转载 wpa_supplicant与wpa_cli之间通信过程
wpa_supplicant编译:1. wpa_supplicant/Android.mk :-- wpa_cli-- wpa_supplicant-- libwpa_client.so2. hostapd/Android.mk :-- hostapd_cli-- hostapd从通信层次上划分,wpa_supplicant提供向上的控...
2019-07-25 17:53:19
581
1
转载 进程空间分配和堆栈大小
进程空间分配和堆栈大小1. Linux中进程空间的分配情况如下: 从上图可以看出,进程的空间分配:与进程相关的数据结构(页表、内核栈、task) ---> 物理内存 ---> 内核代码和数据---> 用户栈 ---> 共享库的内存映射区 ---> 运行时堆 --->未初始化数据段.bss---> 已初始化数据段.data ---...
2019-07-19 14:54:40
3833
1
转载 ulimit -n 修改
ulimit -n 修改通过ulimit -n命令可以查看linux系统里打开文件描述符的最大值,一般缺省值是1024,对一台繁忙的服务器来说,这个值偏小,所以有必要重新设置linux系统里打开文件描述符的最大值。那么应该在哪里设置呢?最正确的做法是在/etc/security/limits.conf里设置: [root@localhost security]# ulimit...
2019-07-18 17:24:37
1279
原创 Realtek WiFi 模块实现AP和station 模式同时启用
问一下周边的朋友,Realtek WiFi 模块是否能实现AP和station 模式同时启用,大家都均确定的说这是不能的。后面网上看看,说可以的,于是找模块供应商咨询了一下,果然是可以的,其实原厂驱动已经做好了,非常简单,流程如下: 1、在WiFi驱动Makefile文件里面加上EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE 然...
2019-06-14 13:49:01
4558
1
原创 基于Linux WiFi ap 的hostapd 工具的使用方法
上一篇文章基于Linux wpa_supplicant wpa_cli 工具调试WiFi sta 网络连接讲了WiFi sta 的wpa工具连接方法,现在来讲讲WiFi ap 的hostapd 工具的使用方法。 执行如下脚本即可killall -q wpa_supplicantkillall -q udhcpckillall -q udhcpdkillall...
2019-05-30 10:59:43
2216
1
原创 基于Linux wpa_supplicant wpa_cli 工具调试WiFi sta 网络连接
在网上看了不少这方面的文章,可惜总是照着用行不通,自己玩了一下,写出来,我下面是基于Linux 非Android平台操作的。必要的工具:wpa_supplicant wpa_cliudhcpcwpa_supplicant -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -dd -Bwpa_cli -iwl...
2019-05-30 10:54:32
1293
转载 IoT设备WiFi配网及现状
IoT设备WiFi配网及现状原文地址https://www.cnblogs.com/rockyching2009/p/10042263.html一、引言现下,物联网(IoT/IoE)中智能产品普遍采用WiFi与路由器完成连接,然后通过手机和云端进行数据交互,拓扑结构如下:由上图可见,APP和智能产品之间并没有直接的交互,而是夹杂了”云“端(当然,我们也可以直接走局域网)。...
2019-05-23 17:49:57
2240
转载 LINUX下目标文件的BSS段、数据段、代码段
转自http://blog.chinaunix.net/uid-27018250-id-3867588.htmlLINUX下目标文件的BSS段、数据段、代码段操作系统:ubuntu 13.04工具:gcc, objdump, readelf参考:《程序员自我修养》代码编译后的机器指令经常被放在代码段里,代码段名为".text";已初始化的全局变量和已初始化的局部静态变量经常放在数据...
2019-05-22 11:38:29
494
转载 使用 /sys 文件系统访问 Linux 内核
转自https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/sysfs 与 /syssysfs 文件系统总是被挂载在 /sys 挂载点上。虽然在较早期的2.6内核系统上并没有规定 sysfs 的标准挂载位置,可以把 sysfs 挂载在任何位置,但较近的2.6内核修正了这一规则,要求 sysfs 总是挂载在 /sys 目录上;针对以前的...
2019-03-21 16:40:54
492
转载 Android添加用户组及自定义App权限
Android:4.4.4一、应用场景在Android设备上,现在我们外接了一个USB转串口的设备,设备节点是/dev/ttyUSB0:# ls -l /dev/ttyUSB0crw-rw---- 1 root root 188, 0 /dev/ttyUSB0信息显示:该设备的用户及其所属组别都是root,root的持有者对该设备具有读写权限。但是,我们的App是被排除在root之外...
2019-03-07 13:46:25
1552
原创 Linux 应用程序信号基础知识总结
以前看的底层的东西居多,不过底层原厂做的相对完善了,导致底层的工程师总是在做一些硬件+驱动/软件测试的移植工作,很多Linux 精妙的东西没学到,觉得不是Linux内核简单,而是目前的生态链来说,驱动工程师只有原厂有较大锻炼罢了,现在有时间就看看应用的东西吧,写点基础的总结。1.发送信号命令 kill -信号 要发送的进程id(pid) 例如kill -S...
2019-02-14 10:46:15
594
原创 关于Linux 驱动以及应用调试信息打印方式总结
1.应用打印调试1.1 printf printf 是最简单的应用调试打印方式,默认打印在调试串口上,如果有telnet ssh 这些伪终端运行程序,printf 就打印在当前终端上。printf 的好处就是简单易用,因为我们第一个c应用程序就用了printf了。囧,我当时Helloworld 没好好学习导致后面很窘迫。不过printf 也带有较大的缺陷,那就是比较耗时,如果p...
2019-01-02 14:36:52
2241
转载 解决Linux下USB设备节点ttyUSB名不固定的问题,生成固定USB转串口设备节点
原文链接:http://blog.sina.com.cn/s/blog_8b58097f0102wxm3.html 感谢博主分享!!! 1. Linux下USB设备节点名不固定问题经常会遇到以USB转串口设备为例,通常设备节点名为ttyUSBx(x为0~n),Linux内核会根据设备插入的先后顺序进行编号的分配,比如第一个插入的设备编号为ttyUSB0,然后依此加1,变为tty...
2018-12-27 13:43:21
4047
1
转载 彻底理解Linux的各种终端类型以及概念
origin: http://blog.youkuaiyun.com/dog250/article/details/78766716这篇文章的动机有两个,上周同事问我关于Linux终端的问题,我简要解答后发现有些概念确实自己也说不清楚,然而这些概念我曾经是弄清楚了的,但也只是曾经。 大概六七年前,我是懂这些东西的,当时做了一些记录: linux终端闲谈:http://blog.youkuaiyun.com/do...
2018-12-26 09:45:29
987
1
原创 Linux libc 库文件更新
觉得busybox 里面用的一些libc 库函数不支持Linux的一些内核特性,需要更新,怎么办?首先就是要查看版本,然后去下载代码过来看,如果有必要自己改一下,更新一下版本值了IDE,或者想办法避开。readelf -a /bin/busybox |grep NEEDED 0x00000001 (NEEDED) Shared library: [...
2018-12-22 12:38:06
1818
原创 Linux arm 集成busybox telnetd 功能遇到的坑
以前用过蛮多telnet 的,这次只有一个串口,被BT 占用后就没有调试口了,也没网卡,于是就想到用WiFi 来用telnetd 这个功能,没想到以前胡乱网上看看,复制粘贴上去就能用的,这次死活不行。 1、mount -t devpts devpts /dev/pts 提示 no such file 可是我明明在rcS 文件有这些命令: ...
2018-12-15 10:53:51
1548
转载 select机制的驱动实现及原理
一、驱动实现select机制的步骤 1、首先初始化一个等待队列头 2、在驱动中实现poll函数,该函数只需做两件事情 a、使用poll_wait()函数将等待队列添加到poll_table中。 b、返回描述设备是否可读或可写的掩码。 3、在驱动的相应地方调用wake_up()函数,唤醒等待队列。 两点说明: a、等...
2018-11-27 20:08:37
2290
转载 C语言关于指针的注意事项
C语言关于指针的注意事项一、指针的四个关键概念1、指针的类型2、指针指向的类型3、指针的值,也就是指针指向的地址4、指针自己所占用的内存空间注意:指针变量所存的内容就是内存的地址编号!例如:int **pp = NULL;1、指针的类型是 int **2、指针指向的类型 int *3、指针的值为NULL4、指针自己所站内存的大小 sizeof(pp)二、强制类型转换强...
2018-11-22 17:15:16
703
转载 细说linux IPC(十一):各种IPC形式比较总结(完)
【版权声明:尊重原创,转载请保留出处:blog.youkuaiyun.com/shallnet 或 .../gentleliu,文章仅供学习交流,请勿用于商业用途】 这个系列基本上到现在为止已经差不多把linux上的各种常用的IPC介绍完了,linux上面的IPC大多都是从UNIX上面继承而来。 最初Unix IPC包括:管道、FIFO、信号。System V ...
2018-11-17 15:14:03
1405
转载 Android Camera开发分辨率相关问题总结
转自 https://blog.youkuaiyun.com/jiayite/article/details/52039929相机相关的开发时,发现并解决了一些问题,并将其记录于下以便以后查看。问题设置了previewSize和pictureSize,但是通过打Log看出当时设置的时候分辨率是改变了的,然而正是拍照的时候分辨率又变回系统默认的了,在不同的机子上默认的分辨率不同。 setParam...
2018-08-24 16:41:38
3443
转载 Camera设置预览尺寸的总结
Camera设置预览尺寸的总结 总结下个人经验,由于预览尺寸设置不当会导致Camera预览变形,经过一番折腾,发现要先获得Camera支持的尺寸在跟屏幕分辩率进行比较,把最接近尺寸设置为预览尺寸就可以了。首先获得屏幕宽高 public void getScreenSize() { WindowManager wm = (WindowManager) ge...
2018-08-24 11:11:34
9212
1
转载 dumpsys camera 以及一些命令
dumpsys media.camera:Android 4.3引入的wm工具wm命令及用法:系统说明: usage: wm [subcommand] [options] wm size [reset|WxH] wm density [reset|DENSITY] wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM] ...
2018-08-24 09:46:37
3961
1
wince触摸屏效果测试软件
2010-07-12
YL_SMDK2440A_BSP包包含ST16C2550驱动
2010-06-09
最便宜的带核心板的6410开发板——OK6410 资料
2010-05-09
TQ2440 介绍——我代理的2440开发板
2009-09-11
windows mobile2440 BSP
2009-08-12
立宇泰 2440 5.0 BSP
2009-03-17
ARM920T Technical Reference Manual
2008-12-24
ARM Architecture Reference Manual(2nd Edition)
2008-12-23
Sate4412开发板用户手册(linux android 编译开发环境搭建)V1.4.1.pdf
2014-01-12
最新从三星代理商那里获得的S5PV210 完整手册
2013-11-25
Sate210-F开发板硬件用户手册V2.0.pdf
2013-11-17
Sate210-F开发板硬件手册V1.0.pdf
2013-11-16
Sate210 SDMMC、INand wince 系统升级指导
2013-04-27
wince6.0 S5pv210Sate210 VGA 1280*1024测试镜像(南嵌电子科技作品)
2013-01-13
wince6.0 S5pv210 之Sate210 VGA 镜像1440*900分辨率测试镜像(南嵌电子科技作品)
2013-01-13
使用SAM-BA更新jlink固件20120716
2012-08-14
Sate210 android 用户使用手册V1.0
2012-04-22
三星Cortex A8 S5pv210 wince6.0 BSP 201010
2011-11-08
分析各家ARM11 S3C6410 开发板的性价比
2011-08-26
三星ARM11 6410 mobile BSP
2011-04-20
友坚2416 WINCE5.0软件包(BSP)
2011-01-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人