自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (35)
  • 问答 (1)
  • 收藏
  • 关注

原创 由于cherry-pick,导致repo sync冲突

git

2022-07-27 19:41:37 436 1

原创 用tensorflow的conv2d卷积实现均值blur

import numpy as npimport matplotlib.pyplot as pltimport cv2import tensorflow as tffrom tensorflow.python.framework import graph_utilimport timeblur_size = 31s_time = time.time()# (height, width, channel)BGR -- > HWC,RGB# img = cv2.imread(

2022-03-16 18:58:15 352

原创 多线程信号cond_wait()为什么使用while

int empty_slot = 5;producer(){ while(1) { lock(&empty_cnt_lock); while(empty_slot == 0){ cond_wait(&empty_cond, &empty_cnt_lock); } empty_slot --; unlock(&empty_cnt_lock); .

2021-07-10 10:12:52 443

原创 将字符串作为shell命令执行

eval: eval [arg ...] Execute arguments as a shell command. Combine ARGs into a single string, use the result as input to the shell, and execute the resulting commands. Exit Status: Returns exit status of command or success if.

2021-07-08 14:13:07 5459

原创 sizeof用法

#include <stdio.h>#include <stdlib.h>void test(char *p){ printf("p: %lu %s \n", sizeof(p), p);}int main(){ char str[30] = "zhang"; char str_two[7][8] = {0}; printf("str: %lu %s \n", sizeof(str), str); printf("str_two: %lu \n", s.

2021-05-24 17:51:26 119

原创 strncat越界,踩内存

#include <string.h>#include <stdio.h> #include <stdlib.h>int main(){ char *a = (char *)malloc(sizeof(char) * 10); char w[30]="WWWWWWWWWWWWWWWWWWWWWWWWWWWW"; printf("w[30]: %c \n", w[30]); //越界 memcpy(a, "123456789", 10); mem.

2021-05-21 16:52:09 690

原创 VirtualBox 中虚拟机扩容ubuntu硬盘空间,完全图形化操作

1、关闭虚拟机2、打开cmd窗口,进入到VirtualBox目录下(C:\Program Files\Oracle\VirtualBox),可以看到改目录下面有VBoxManage.exe3、VBoxManage modifyhd <虚拟硬盘路径> --resize 204800,例如:扩容到200GB,命令如下: VBoxManage modifyhd "D:\vm_ubuntu\ubuntu18.04\ubuntu18.04.vdi" --resize 204800...

2021-05-20 12:18:41 362 1

原创 查看Linux系统函数头文件,使用man

$ man stat$ man 2 stat

2021-05-18 18:34:58 501

原创 获取文件大小fseek、stat、fstat

#include <sys/stat.h>#include <unistd.h>#include <stdio.h>#include <fcntl.h>/*************************************************************************struct stat { dev_t st_dev; //文件的设备编号 ino_t s.

2021-05-18 18:06:53 379

原创 dirname与basename的用法注意

#include <stdio.h>#include <stdlib.h>#include <string.h>#include <libgen.h>int main(){ char in_filename[128] = "/tmp/test_name.file"; char out_filename[128]; char *dirc = NULL, *basec = NULL, *bname = NULL, *dname = NULL;.

2021-05-18 11:30:22 210

原创 shell中 执行后台命令后的打印保存到文件

test_code -param >> log 2>&1 &

2020-10-30 18:06:27 4137

原创 shell 变量名中包含变量

eval接受一个字符串作为它的参数,并对它进行评估,就好像你在命令行上键入了该字符串一样。(如果你传递了几个参数,它们首先与它们之间的空格相连接。)eval echo \${$n}运行传递给的参数eval。扩展后,参数是echo和${1}。所以eval echo \${$n}运行命令echo ${1}。string=idid=1stream_1="111111"cmd="{$(eval echo \${stream_${id}}), 222222}"ech...

2020-10-22 18:54:21 5982

原创 Makefile中空格与tab

makefile实际上是在一个文件中用两种完全不同的“语言”编写的。recipe(运行编译器,echo等的命令)是用shell脚本语法编写的。不在recipe中的其余makefile是用makefile语法编写的。为了使make能够区分配方和不是配方的东西,它使用了TAB字符。因此,以TAB开头的行被假定为recipe的一部分,因此它们是shell脚本并传递给shell进行解析。而不以TAB开头的行不能成为recipe的一部分,它们必须是make语法,用空格。ifneq是makefile

2020-09-14 10:04:57 3256 1

原创 数组名 、 函数名 和 数组名取地址 、 函数名取地址

#include <stdio.h>#include <stdlib.h>#include <string.h>void test(){ printf("123456\n");}int main(){ char a[10]; printf("&a:%p, a:%p, &a[0]:%p \n", &am...

2020-03-04 13:09:36 712

原创 从内存中保存yuv文件

数据是NV12YYYYYYYYYYYYYYYYUVUVUVUV frame_y_buf = (u8 *)malloc(width * height); if (frame_y_buf == NULL) { printf("allocate frame_y_buf error, line:%d!\n", __LINE__); rval = -1; b...

2020-01-16 17:49:03 643

原创 获取数组的第一大值和第二大值

#include <stdio.h>#include <stdlib.h>#include <string.h>int arry[10] = {8, 2, 4, 6, 8, 3, 1};int main(){ int n = 0, i = 0 ,j = 0; int max_value = 0, max_value_index = 0; i...

2020-01-15 12:16:56 425

原创 Win10 打开OpenSSH

一、安装OpenSSH 客户端 、OpenSSH 服务器设置 -> 管理可选功能 -> 添加功能 -> [OpenSSH 客户端] [OpenSSH 服务器]二、启动服务并设置为自动启动SSH服务 -> 启动SSH服务 ->属性 -> 启动选择 -> 自动ubuntu$ scp 1.txt xxx@company@1...

2019-12-04 15:18:30 517

转载 Linux使用mount挂载Windows共享文件夹

一.首先在本地主机上选择你要共享的文件夹,右击“属性”-“共享”-“高级共享”-勾选“共享此文件”-设置共享名-“权限”-“添加”-“高级”-“立即查找”-“选择本地的用户名”然后一路确定回去。这样就实现了文件的共享123456二.我们要只到自己的ip地址保证与虚拟机在一个网断下。在cmd弹出终端,输入ipconfig查询本地机的ip地址然后在u...

2019-12-03 13:59:04 370

原创 pthread_mutex_lock 与 pthread_cond_signal 用法

写线程可以多次覆盖写,读线程必须在buffer中有数据后才能读,并且不能重复读取。Pthread_cond_singal释放信号后,即使没有Pthread_cond_wait,信号也会马上复位。static pthread_mutex_t mutex;static pthread_cond_t count_nonzero;static int lpr_completed_fl...

2019-11-20 16:52:52 655

原创 Linux 、ARM相关网址

在线Linux命令手册 中文http://linux.51yip.com/arm相关https://developer.arm.com/GNU官方地址https://www.gnu.org/c标准库源码ftp://ftp.gnu.org/gnu/glibc

2019-10-25 15:50:21 206

转载 git cherry-pick 没有merge的代码到本地

 场景:程序员A提交了一个commit到gerrit上,我们叫他为commit_id1,但是还没有review,那就是没有入库,程序员B想再本地拿到这个commitd_id1,既然这个提交没有入库,很明显,B单纯执行git pull是拿不到这个提交的,那他要怎么办呢,  目前我想到的有几种方式:第一种如果只是单纯了改了很少量的文件,我们不排斥程序员A把这几个文件直接发给B。如果改动比较大呢?第...

2019-10-25 14:48:39 5598 2

原创 tar解压tar.xz文件

linux kernel官网https://www.kernel.org/在linux下解压tar.xz文件步骤1、解压# tar xvfJp ***.tar.xz 2、创建# tar cvfJp xxx.tar.xz xxx

2019-08-21 11:23:38 835

原创 shell脚本中中获取Ubuntu的版本号和系统架构等

#!/bin/bashrelease_num=$(lsb_release -r --short)code_name=$(lsb_release -c --short)hw_arch=$(uname -m)echo "release_num= $release_num"echo "code_name= $code_name"echo "hardware Architecture =...

2019-08-21 09:58:29 3303

转载 信号的用法,signal函数、sigaction函数及信号集(sigemptyset,sigaddset)操作函数

信号是与一定的进程相联系的。也就是说,一个进程可以决定在进程中对哪些信号进行什 么样的处理。例如,一个进程可以忽略某些信号而只处理其他一些信号;另外,一个进程还可以选择如何处理信号。总之,这些总与特定的进程相联系的。因此,首 先要建立其信号和进程的对应关系,这就是信号的安装登记。Linux 主要有两个函数实现信号的安装登记:signal和sigaction。其中signal在系统调用的基础上实...

2019-07-30 17:03:45 1376

转载 pthread用法

pthread_create()函数函数简介  pthread_create是UNIX环境创建线程函数头文件  #include<pthread.h>函数声明  int pthread_create(pthread_t *restrict tidp,const pthread_attr_t *restrict_attr,void*(*start_rtn)(...

2019-07-30 16:56:29 719

转载 信号量Semaphore的用法

信号量(Semaphore)信号量和互斥锁(mutex)的区别:互斥锁只允许一个线程进入临界区,而信号量允许多个线程同时进入临界区。不多做解释,要使用信号量同步,需要包含头文件semaphore.h。主要用到的函数:int sem_init(sem_t *sem, int pshared, unsigned int value);其中sem是要初始化的信号量,pshare...

2019-07-30 16:30:44 896

转载 pthread_mutex_lock 相关

互斥量(mutex)就是一把锁。多个线程只有一把锁一个钥匙,谁上的锁就只有谁能开锁。当一个线程要访问一个共享变量时,先用锁把变量锁住,然后再操作,操作完了之后再释放掉锁,完成。当另一个线程也要访问这个变量时,发现这个变量被锁住了,无法访问,它就会一直等待,直到锁没了,它再给这个变量上个锁,然后使用,使用完了释放锁,以此进行。这个即使有多个线程同时访问这个变量,也好象是对这个变量的操作...

2019-07-30 16:10:21 663

转载 linux下c语言的多线程编程

原文地址:https://www.cnblogs.com/nfcm/p/7653433.html我们在写linux的服务的时候,经常会用到linux的多线程技术以提高程序性能多线程的一些小知识:一个应用程序可以启动若干个线程。线程(Lightweight Process,LWP),是程序执行的最小单元。一般一个最简单的程序最少会有一个线程,就是程序本身,也就是主函数(...

2019-07-24 18:42:40 156

原创 scanf不会停止等待输入

#include <stdio.h>#define CLEAR_BUFFER do { \ int c_tmp; \ while ((c_tmp = getchar()) != EOF && c_tmp != '\n'); \ } while (0)/* #define CLEAR_BUFFER do { \ for (int c_tmp; (...

2019-07-01 15:18:49 3004 1

转载 续行符号\

1、把一个预处理指示写成多行要用“\”续行,因为根据定义,一条预处理指示只能由一个逻辑代码行组成。2、C代码写成多行则不必使用续行符,因为换行在C代码中只不过是一种空白字符,在做语法解析时所有空白字符都被丢弃了,C中以;结束。...

2019-06-05 16:41:37 922

转载 sed的用法

https://www.cnblogs.com/ginvip/p/6376049.html

2019-06-05 14:41:20 112

原创 shell删除当前目录除一些文件(目录)后的其他文件

1、copy备份然后删除save_file_and_del_other(){ print_info "save_file_or_dir in" mkdir ../copy_tmp for tmp in "$@"; do print_info "save $tmp" cp -p -${debug_opt} $tmp ../copy_tm...

2019-06-04 14:54:04 2252

原创 C语言判断机器CPU大小端模式的两种方法

大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中。小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中。第一种方法思路:利用指针的强制类型转换,取到低地址#include <stdio.h> int main() { int a; a = 0x12345678; ...

2019-05-30 17:48:19 624

原创 cmder命令行提示符(λ改成$)

更改cmder命令行提示符(λ改成$),网上的方式一般都是:进入cmder的目录,进入vendor,修改clink.lua文件。我发现改成{bash::bash}后,修改clink.lua文件也没用。可以尝试修改C:\cmder\vendor\git-for-windows\etc\profile.d\git-prompt.sh中的 PS1="$PS1"'λ ' ...

2019-05-29 13:45:26 3142 4

转载 ubuntu 下播放 yuv 格式的文件&预览Raw格式图片

1、ubuntu 下播放 yuv 格式的文件1)使用ffplaysudo apt-get install ffmpeg查看图片ffplay -f rawvideo -video_size 640x360 test_input_640x360_bak.yuv另外,windows下面可以使用yuvplayer.exe,打开需要设置size,软件下载链接http://...

2019-04-29 15:58:53 7638

转载 C语言字节对齐问题详解

引言 考虑下面的结构体定义:1 typedef struct{2 char c1;3 short s; 4 char c2; 5 int i;6 }T_FOO; 假设这个结构体的成员在内存中是紧凑排列的,且c1的起始地址是0,则s的地址就是1,c2的地址是3,i的地址是4。 现在,我们编写一个简单的程序:...

2019-03-22 18:23:27 765

转载 Repo 的使用小结

转载:https://www.cnblogs.com/v2m_/p/7060832.html一、安装创建目录和修改环境变量$ mkdir ~/bin$ PATH=~/bin:$PATH下载repo代码$ curl https://storage.googleapis.com/git-repo-downloads/repo &gt; ~/bin/repo$ chmod a...

2019-01-23 14:13:26 473

转载 Android.mk常用指南

转载:http://huzhengyu.com/2018/07/21/Android-module-make/本文基于Android O平台进行分析Android.mk对于熟悉Android源码的人来说并不陌生,虽然Google开始逐步用Android.bp来替换Android.mk,但是其实质并没有发生什么变化,只是又在Android.mk的基础上又封装了一层。静态库与动态库...

2019-01-16 16:58:38 493

转载 include相关

1、尖括号 #include &lt;stdio.h&gt;:        编译器会去 系统配置的库环境变量 和 用户配置的路径去搜索,而不会在项目的当前目录去查找,一般用于包含标准的库头文件。系统目录指:编译时-I指定的目录,默认路径以gcc为例, 在命令行运行 echo | gcc -E -v - 查看2、双引号 #include "stdio.h":        ...

2019-01-16 16:48:43 187

转载 android L 关机流程图

转载:https://blog.csdn.net/hovan/article/details/42495379下面是简单的流程图,从java到kernel层。ShutdownThread.java文件stop playing music,因为后面可能要playing shutdown music.代码如下:private static void beginShutdownSeq...

2019-01-04 17:38:22 314

SP_Flash_Tool_exe_Linux_v5.1628.00.100.zip

MTK/刷机/LINUX

2016-07-18

SP_Flash_Tool_exe_Windows_v5.1628.00.000

MTK刷机/Window版

2016-07-18

windows下打串口log _串口驱动

windows下打串口log _串口log驱动_PL2303_Prolific_DriverInstaller_v1.10.0.exe

2015-11-03

adb驱动 adb_interface_usb_driver

adb驱动 adb_interface_usb_driver

2015-11-03

MTK6753 linux版下载工具 SP_Flash_Tool_exe_Linux_v5.1516.00.100.zip

MTK6753 linux版下载工具 SP_Flash_Tool_exe_Linux_v5.1516.00.100.zip

2015-07-20

MTK6753 windows版下载工具 SP_Flash_Tool_exe_Windows_v5.1516.00.zip

MTK6753 windows版下载工具 SP_Flash_Tool_exe_Windows_v5.1516.00.zip

2015-07-20

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part5.rar

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part5.rar

2015-07-17

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part4.rar

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part4.rar

2015-07-17

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part3.rar

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part2.rar

2015-07-17

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part2.rar

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part2.rar

2015-07-17

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part1.rar

ubuntu任何目录下运行adb 附adt-bundle-linux-sdk.part1.rar

2015-07-17

CCT6752v1.1504.01_setup.rar

CCT6752v1.1504.01_setup.rar

2015-05-26

CCT6735v1.1506.01_setup.rar

CCT6735v1.1506.01_setup.rar

2015-05-26

CCT6795v1.1504.01_setup.rar

CCT6795v1.1504.01_setup.rar

2015-05-26

CCT6582v1.1425.02_setup.rar

CCT6582v1.1425.02_setup.rar

2015-05-26

AWBMarkTool.zip

AWBMarkTool.zip AWB标点

2015-05-26

CCT6735Mv1.1514.02_setup.rar

CCT6735Mv1.1514.02_setup.rar

2015-05-26

MTK6580下载工具SP_Flash_Tool_v5.15

MTK6580下载工具SP_Flash_Tool_v5.15

2015-05-26

glibc-2.30.tar.xz

glibc-2.30.tar.xz glibc-2.30.tar.xz 15.8 MB 2019/8/2 上午3:59:00

2020-01-19

bazel-0.24.1-installer-linux-x86_64.sh.zip

Bazel 资源的github地址如下,不过下载的速度有些慢,目前最新的版本分享下 https://github.com/bazelbuild/bazel/releases Installing Bazel on Ubuntu链接如下: https://docs.bazel.build/versions/master/install-ubuntu.html#install-with-installer-ubuntu

2019-04-27

bazel-0.24.1-installer-linux-x86_64.sh

Bazel 资源的github地址如下,不过下载的速度有些慢,目前最新的版本分享下 https://github.com/bazelbuild/bazel/releases Installing Bazel on Ubuntu链接如下: https://docs.bazel.build/versions/master/install-ubuntu.html#install-with-installer-ubuntu

2019-04-27

amlogic烧写工具

Amligic平台img烧录工具,USB_Burning_Tool_v2.1.2.rar

2018-11-08

db读取工具

可以打开的.db数据库文件。 sqlitespy是一个快速和紧凑的GUI数据库管理员为sqlite.它的内容sqlite3文件并执行的SQL对付他们.它的图形用户界面使得它很容易探讨,分析和操纵sqlite3数据库.

2018-05-30

Hash校验工具 MD5 SHA1 CRC32

Hash校验工具 ,可以校验文件的MD5 、SHA1 、CRC32值。

2018-05-30

Linux C程序设计_王者归来_教学视频.part5.rar 【part1-part5】

Linux C程序设计_王者归来_教学视频 视频教学:专门录制了23.8小时高清配套教学视频

2018-04-01

Linux C程序设计_王者归来_教学视频.part4.rar 【part1-part5】

Linux C程序设计_王者归来_教学视频 视频教学:专门录制了23.8小时高清配套教学视频

2018-04-01

Linux C程序设计_王者归来_教学视频.part3.rar 【part1-part5】

Linux C程序设计_王者归来_教学视频 视频教学:专门录制了23.8小时高清配套教学视频

2018-04-01

Linux C程序设计_王者归来_教学视频.part2.rar 【part1-part5】

Linux C程序设计_王者归来_教学视频 视频教学:专门录制了23.8小时高清配套教学视频

2018-04-01

Linux C程序设计_王者归来_教学视频.part1.rar【part1-part5】

Linux C程序设计_王者归来_教学视频 视频教学:专门录制了23.8小时高清配套教学视频

2018-04-01

Android应用开发基础与实例

Android应用开发基础与实例

2017-03-26

MIPI Specification

MIPI Specification 包涵CSI+DSI+D-PHY

2016-07-11

GAT -----part2/共2部分

GAT 是MTK 在DDMS 基础上进行二次开发封装的一个集多种debug 功能为一体的工具,除了包含原有DDMS 的功能以外还支持kernel log 抓取,获取native 进程列表,backtrace decode,提取手机端debug 信息等功能。当MTKLogger 出现异常时,经常会需要使用GAT工具来抓取log。 GAT 不支持在user 版本通过USB 获取kernel log,同时在打开其他工具的情况下(例如在使用/proc/kmsg)会导致获取kernel log 异常。

2016-07-11

GAT -----part1/共2部分

GAT 是MTK 在DDMS 基础上进行二次开发封装的一个集多种debug 功能为一体的工具,除了包含原有DDMS 的功能以外还支持kernel log 抓取,获取native 进程列表,backtrace decode,提取手机端debug 信息等功能。当MTKLogger 出现异常时,经常会需要使用GAT工具来抓取log。 GAT 不支持在user 版本通过USB 获取kernel log,同时在打开其他工具的情况下(例如在使用/proc/kmsg)会导致获取kernel log 异常。

2016-07-11

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除