
Linux 应用程序编程
文章平均质量分 51
袁保康
.
展开
-
MacBook M1之我见
MacBook M1安装常用软件同事用上了M1的MacBook,让我帮其装常用软件,我装了Sketch``Photoshop``After Effect``Office,感觉没有什么难度。下面蹭热度从我的角度聊聊M1芯片,当然它是一个ARM芯片,也就是和手机一个架构的的CPU,其实在Linux世界几年前就有类似M1的方案,比如各种能跑Ubuntu系统的Pi。不过很一直是极客的玩物,比如做一个家用磁盘,做一个浇水小玩意儿,简易的PC。而Apple一旦做这种事,是直接面向消费者的,直接越过极客的玩物到消费原创 2021-06-13 15:45:11 · 299 阅读 · 0 评论 -
Ubuntu 18.04 安装eclipse CDT
按照网上执行这个sudo apt install eclipse eclipse-cdt会报这个log file.....!SESSION Fri Aug 16 14:39:20 IST 2019 ------------------------------------------!ENTRY org.eclipse.equinox.launcher 4 0 2019-08-16 14:39:20.065!MESSAGE Exception launching the Eclipse Plat原创 2021-06-13 15:18:08 · 1565 阅读 · 1 评论 -
TypeError: null is not an object evaluating _rngesturehandlerModule.default.direction
TypeError: null is not an object ( evaluating ‘RNGestureHandlerModule.default.Direction’)在做React Native时遇到这个错误,然后把代码回退到没有此问题的版本,也还是有此问题,比较怪异。通过大局观来看问题应该类似缓存引起的。手机卸载最近装的测试程序,重启,然后就恢复正常了,具体哪一步使得变好了,暂时不清楚。...原创 2021-06-13 14:53:51 · 1399 阅读 · 0 评论 -
letsencrypt遇到Validations for new domains are disabled in the V1 API
letsencrypt遇到Validations for new domains are disabled in the V1 API$ sudo letsencrypt certonly --webroot -w /var/www/html -d example.comSaving debug log to /var/log/letsencrypt/letsencrypt.logPlugins selected: Authenticator webroot, Installer NoneStart原创 2020-11-22 11:58:22 · 338 阅读 · 0 评论 -
Ubuntu 18.04安装docker
sudo apt-get remove docker docker-engine docker.io containerd runcsudo apt-get updatesudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common curl -fsSL https://download.doc原创 2020-11-16 23:58:44 · 291 阅读 · 0 评论 -
The “https://packagist.org/packages.json“ file could not be downloaded
The “https://packagist.org/packages.json” file could not be downloaded$ sudo composer create-project xxxxx xxxxx [Composer\Downloader\TransportException原创 2020-11-16 23:26:08 · 1276 阅读 · 0 评论 -
使用GDB根据段错误core dump文件定位问题
使用GDB根据段错误core dump文件定位问题#include <stdio.h>int main(void){ char *s = "hello world"; *s = 'H';}$ gcc segfault.c -g -o segfault$ ./segfaultSegmentation fault来自:https://en.wikipedia.org/wiki/Segmentation_fault如何定位$ gdb-multiarch ./se原创 2020-09-08 10:39:57 · 396 阅读 · 0 评论 -
关于抓包的一些常用软件
网络包抓包来debug程序还是比较方便的,最早知道的软件是WireShark,它像是形成了一种行业标准,但是从底层抓取网络通信包,我记得调试PPOE的时候第一次使用这个软件,不过到现在也没有弄清楚这个软件的过滤器规则怎么写。如果是获取http/https的包Fiddler是最适合的,因为它做了反向代理,证书之类的相关操作。蓝牙包蓝牙也是一大块,如果是简单的通信,比如SPP/BLE,可以借助A...原创 2020-01-01 11:06:23 · 847 阅读 · 0 评论 -
关于Firefox插件jUART
jUART的功能是网页可以直接和电脑连接的串口设备通信(比如:扫码枪,单片机等等),它的主页位于https://github.com/billhsu/jUART,是一个基于FireBreath的一个插件,是一种NPAPI插件,在最新版本的Firefox浏览器上已经不被支持了,这种NPAPI插件比较不安全。但是目前也没有完全能替代的东西,比如像Firefox或者Chrome的标准扩展程序还没有支持串...原创 2020-01-01 10:26:21 · 1155 阅读 · 0 评论 -
轮询操作 (select poll)
原文地址:http://blog.youkuaiyun.com/unbutun/article/details/4722448L轮询函数轮询的概念和作用使用非阻塞I/O的应用程序通常会使用select()和poll(),poll和select用于查询设备的状态,以便用户程序获知是否能对设备进行非阻塞的访问,它们都需要设备驱动程序中的poll函数支持。Select()和poll()系统调转载 2012-10-05 15:42:15 · 2570 阅读 · 0 评论 -
timer驱动
区别于循环的一种方法!原创 2012-10-05 15:22:44 · 964 阅读 · 0 评论 -
Linux串口编程-4-odd校验
#include #include #include #include #include #include #include #include main(){ int fd; int i; int len; int n = 0; char b[1]={0x00}; c原创 2012-10-12 00:30:48 · 1337 阅读 · 0 评论 -
Linux串口编程-1-无校验
#include #include #include #include #include #include #include #include main(){ int fd; int i; int len; int n = 0; char b[1]={0x01}; c原创 2012-10-11 22:57:33 · 1282 阅读 · 0 评论 -
Linux串口编程-3-even校验
#include #include #include #include #include #include #include #include main(){ int fd; int i; int len; int n = 0; char b[1]={0x01}; c原创 2012-10-12 00:26:58 · 1592 阅读 · 0 评论 -
Linux下的串口编程
资源转自网上,原帖地址为:http://www.laogu.com/wz_2752.htmhttp://www.xxlinux.com/linux/article/development/soft/20071029/11228.htmlhttp://blog.youkuaiyun.com/jznsmail/archive/2006/03/15/625382.aspx串口简介 串行口是计转载 2012-10-12 00:43:40 · 1550 阅读 · 0 评论 -
linux串口通信mark问题
这近做一个监控系统,设备提供的通信接口是RS485 ,我所用的是S3C2440芯片,嵌入linux系统,设备的通信的第9位即校验位要为1,还有波特率57600.我是单独控制一个引脚来控制 RS485的收发,能发出去,收到的数据前面的被截掉了,是由于控制脚转换的太慢了,自己写个RS485驱动,一是项目紧没那么都时间,二是对驱动这块东东还不太熟悉,后来采取两个RS485通道一个发另个收,解决了收发慢的转载 2012-10-12 13:43:34 · 1606 阅读 · 0 评论 -
minicom移植
1、ncurses源码包下载(ncurses-5.5.tar.gz) ncurses提供字符终端处理库,包括面板和菜单,minicom配置时生成菜单就是由ncurses生成的。 2、minicom源码包下载(minicom-2.4.tar.gz)3、解压nucrses源码包,切换目录进去。配置ncurses ./configure CC=arm-none-li转载 2012-10-12 13:19:50 · 2123 阅读 · 0 评论 -
Linux串口编程-5-space校验
先说经过试验还不行的方案:①:Linux串口通讯(mark, space校验方式的实现) http://hi.baidu.com/czyt_/item/fcaaea0ce57910c074cd3c00②:Linux操作系统下微机与单片机组成的多机通讯系统 http://wenku.baidu.com/view/35e48a97dd88d0d233d46a16.html③: Lin原创 2012-10-12 00:37:08 · 3183 阅读 · 1 评论 -
图形化串口调试工具XGCom
一、软件介绍: 最近调试嵌入式linux串口编程相关程序,一开始一筹莫展,只知道数据发出去,但是看不到数据收到,后来终于在网上搜到一个用于linux环境的可视化调试工具xgcom,遇到的一些调试问题迎刃而解 ,很不错赞一个! 一个Linux下的图形化的串口调试工具.帮助开发者调试串口程序.部分代码参考 gtkterm-0.99.5.二、安装使用:项转载 2012-10-15 22:38:33 · 4131 阅读 · 0 评论 -
S3C2440 UART串口驱动
++++++++++++++++++++++++++++++++++++++++++本文系本站原创,欢迎转载! 转载请注明出处:http://blog.youkuaiyun.com/mr_raptor/article/details/6556133++++++++++++++++++++++++++++++++++++++++++1.1 UART串口通用异步接收器和发送器(Univ转载 2012-10-17 20:27:52 · 1773 阅读 · 0 评论 -
Linux串口编程-2-mark校验
#include #include #include #include #include #include #include #include #include main(){ int fd; int i; int len; int n = 0; char b[1]原创 2012-10-12 00:10:56 · 1253 阅读 · 0 评论 -
S3C2440串口mark和space校验
先看datasheet:硬件是支持的,再看驱动:linux-2.6.32.2\drivers\serial\samsung.c中 if (termios->c_cflag & PARENB) { if (termios->c_cflag & PARODD) ulcon |= S3C2410_LCON_PODD; else ulcon |= S3C2410_L原创 2012-10-17 20:24:43 · 2785 阅读 · 0 评论 -
子函数中设置校验方式mark,space
#include /*标准输入输出定义*/ #include /*标准函数库定义*/ #include /*Unix 标准函数定义*/ #include /*系统类型定义*/ #include /*系统状态定义*/ #include /*文件控制定义*/ #include /*PPSIX 终端控原创 2012-10-15 20:43:49 · 1390 阅读 · 1 评论 -
Makefile :Makefile 的几个自动变量说明 $@ $< $^
/********************************************************************************************************************************原文地址:http://blog.youkuaiyun.com/gudulyn/article/details/745586转载说明:$@转载 2013-01-10 20:26:04 · 786 阅读 · 0 评论 -
Makefile: Makefile 隐式规则 模式规则
/********************************************************************************************************************************原文地址:http://blog.youkuaiyun.com/w_ww_w/article/details/7592588转载说明:Ma转载 2013-01-10 21:56:03 · 1457 阅读 · 0 评论 -
Makefile: Makefile中的变量数据库和隐含规则
/******************************************************************************************************************原文地址:说明:这个是make -p显示make变量数据库和隐含 规则的内容。****************************************原创 2013-01-11 08:26:00 · 1747 阅读 · 0 评论 -
Makefile: Makefile中的-I
书上是这样解释的:-I DIR当包含其他 makefile 文件时,可利用该选项指定搜索目录读了好多遍都没有懂,结果使我浮想联翩,最后在老师我指导下明白了:指定目录下(如tmp)的makefile(或者其他名字)在当前Makefile中要有这样一句:include makefile,然后makefile -I tmp时就会在在tmp下找Makefile并把里边的内容添加到当前目录下原创 2013-01-11 10:53:53 · 16416 阅读 · 0 评论 -
文件编程:格式化读fscanf()函数
这个也是C库中的函数,不过暂时没有发现有Linux系统调用中的对应功能的函数,格式化读---我还以为是输入一个"a"的话就可以读出它的ascii码来呢!结果人家就不认识了。结果不是下边是个小例子代表我学习过了这个函数:#include #include int main(){ int i; printf("Input an integer:"); if(fscanf(stdin,原创 2013-01-12 16:35:56 · 1245 阅读 · 0 评论 -
文件编程:格式化读fprintf()函数
这次有了fprintf()也可以加深一下刚才的格式化读,小例子:#include FILE *stream;void main(){ int i = 10; double fp = 1.5; char s[] = "this is a string"; char c = '\n'; stream = fopen("fprintf.out","w"); fprintf(原创 2013-01-12 16:54:54 · 1278 阅读 · 0 评论 -
文件编程:定位fseek()函数
本想也像lseek一样写一个测试文件大小的函数,但是最后发现这个返回值和lseek还是有点区别的,就只能 放弃了。 不过回过头来看书上给出的例子,就是用它做了一个计算文件大小的例子如下:它不能简单的只能一个句话来求出,可以看到使用了ftell,这个函数。这个可以返回指针位置。这说明这两个加一块才等于Linux系统调用的一个lseek函数了。#include l原创 2013-01-12 17:23:38 · 1655 阅读 · 0 评论 -
文件编程:路径获取getcwd()函数
这个先练习一下这个例子吧,就像命令行中的"pwd"。#include int main(){ char buf[80]; getcwd(buf,sizeof(buf)); printf("current working directory: %sn", buf);}输出结果:[root@localhost gcc]# ./a.outcurrent working di原创 2013-01-12 19:43:33 · 4839 阅读 · 0 评论 -
文件编程:创建目录mkdir()函数
《Linux常用C函数(中文版)》中居然没有这个函数,这使我感到很惊讶。勉强在百度上看到一点点:Linux下mkdir函数头文件库:#include #include 函数原型:int mkdir(const char *pathname, mode_t mode);函数说明:mkdir()函数以mode方式创建一个以参数path原创 2013-01-12 20:13:43 · 11830 阅读 · 0 评论 -
时间编程:time(),localtime(),gmtime(),asctime(),ctime(),gettimeofday(),settimeofday()
//time1.c#include #include int main(void){ struct tm *local; time_t t; t=time(NULL); local=localtime(&t); printf("Local hour is: %d\n", local->tm_hour); local=gmtime(&t); printf("UTC hour原创 2013-01-12 21:30:32 · 2916 阅读 · 0 评论 -
文件编程:库函数fopen打开
这周学习 文件编程,第一遍学习的时候什么都不考虑,很快就过了,这次倒是遇到了很多问题,特别是权限判断的时候,老师讲的例子都是“可以”例子,当我把实验好后,我就想着让它“不可以",手动改了权限,再来判断的时候,结果很出人意料,这个文件还是”可以的“。只好把权限相关的东西都给忽略掉,全是可写可读的,执行另说!具体的原因好像是我登陆是root权限。fopen(打开文件)原创 2013-01-12 15:36:49 · 3753 阅读 · 0 评论 -
进程控制:waitpid之status意义解析
/******************************************************************************************************************原文地址:http://tsecer.blog.163.com/blog/static/15018172012323975152/说明:关于status,转载 2013-01-15 12:38:41 · 7015 阅读 · 0 评论 -
进程控制:linux中fork同时创建多个子进程注意事项
/******************************************************************************************************************参考:http://blog.sina.com.cn/s/blog_605f5b4f0100x444.html说明:linux中fork同时创建多个子进程原创 2013-01-15 14:06:29 · 8712 阅读 · 0 评论 -
进程控制:waitpid()
/******************************************************************************************************************原文地址:http://blog.sina.com.cn/s/blog_602a39250100xfxx.html说明:深入讲解了waitpid(),知道转载 2013-01-15 13:06:02 · 1497 阅读 · 0 评论 -
进程通信:信号通信中的SIGABRT的验证测试
/******************************************************************************************************************参考:说明:主要是在程序中的合适地址加上abort函数它就会向调用它的进程发SIGABRT信号。*************************原创 2013-01-15 22:52:44 · 3195 阅读 · 1 评论 -
进程通信:信号通信之SIGSEGV测试
/******************************************************************************************************************参考:结合以前学习的C语言,现在学习了signo通信。说明:主要是在程序中的合适地方访问非法内存让系统发SIGSEGV信号。***********原创 2013-01-16 09:19:28 · 1942 阅读 · 0 评论 -
进程通信:信号通信之SIGSTOP和SIGCONT测试
/******************************************************************************************************************参考:结合以前学习的C语言,现在学习了signo通信。说明:主要是在开发板上利用music程序播放音乐,用kill发送SIGSTOP SIGCONT信号。原创 2013-01-16 11:00:29 · 11069 阅读 · 0 评论