Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

Ubuntu Linux编程入门——用hello world!搭建环境

Ubuntu Linux编程入门——用hello world!搭建环境

在Ubuntu系统下搭建了一个类似windows控制台的开发环境。下边是我的研究成果,与大家分享一下。首先我们需要安装相应的工具:在终端输入一下内容:sudo apt-get install g++sudo apt-get install emacs安装完成之后,就相当于我们有了编译环境,剩下的工作就是写一个简单的hello world程序验证一下了。我们在任意的一个目录下新建一个文件夹(这里我是在用户的根目录下新建的,起名为helloworld)截图如下...
Linux下C语言实现 密码不回显输入加强版

Linux下C语言实现 密码不回显输入加强版

明天要做一个项目,涉及到账号密码的输入,看了网上很多例子,Linux下的<curses.h> getch()好像功能有怪异。关闭回显的功能好像也不是很好用。网上给的单纯的getch() 输入的时候只是关闭了回显,如果密码输入错误不能删除。小弟不才稍微研究了一下,写了一个加强版的,经过Linux下的测试通过,写的比较粗糙,献丑了。getch()参照网上给出的...#include<stdio.h>#include<termios...
Android上ozi的简单制作

Android上ozi的简单制作

ozi的和其他地图不同的是,ozi用的是图片图资,而市面上的导航地图用的是矢量地图,ozi相比矢量地图,可以说都是缺点,文件体积大,缩放后影响查看效果,没法按地图上的道路导航等等,反过来ozi有一个最大的优点,就是可以自己制作和编辑,就像画画一样,可以自由修改,同事可以把纸质地图扫描后用来定位。适合户外使用。样本这是我的手机桌面,背景图就是自己做的一个ozi地图局部,下面以这个样本为目标而展开。必须要用到的软件和资料1.gmapedit2.globalma...
如何把Java程序打成JAR包并能自动运行

如何把Java程序打成JAR包并能自动运行

下面就来看看什么是 JAR 文件包吧:1. JAR 文件包JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式。JAR 文件非常类似 ZIP 文件——准确的说,它就是 ZIP 文件,所以叫它文件包。JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,包含了一个 META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的。举个例子,...
很牛的vim使用技巧

很牛的vim使用技巧

读本文之前请注意:1、本文的目标是提供一些vim的使用技巧,利用这些技巧可以提高vim的操作效率。部分技巧在vi上也可以使用,但是现在基本上都是用vim了。2、本文是整理和总结使用技巧,而非讲解vim入门,因此不会涉及最基本的使用,例如如何上移或下移光标,对此类操作请参阅任何一本vim或者vi教程。3、本文阅读对象是了解了vim的基本操作,而希望高效地利用vim进行工作的人。熟练使用vim的人自然不必细读,如果能留下您的宝贵意见,本人将感激不尽。4、本文由...
Linux动态链接库加载初探

Linux动态链接库加载初探

在基于GNU glibc的系统里,包括所有的linux系统,启动一个ELF格式的二进制可执行文件会自动启动和运行一个program loader。对于Linux系统,这个loader的名字是/lib/ld-linux.so.X(X是版本号)。这个loader启动后,反过来就会load所有的其他本程序要使用的共享函数库。 到底在哪些目录里查找共享函数库呢?这些定义缺省的是放在/etc/ld.so.conf文件里面。我们可以修改这个文件,加入我们自己的一些特殊...
Linux Kernel中的免锁算法

Linux Kernel中的免锁算法

在《LINUX设备驱动程序》(第三版)有几页对免锁算法的实现进行了分析。对于作者的分析有两点我想在这里作更加细致的说明。一是作者对循环缓冲的分析,当缓冲区满时分析错了;二是作者没有对里面的实现技巧作详细的介绍。针对以上两点,本文就用2.6.11(2.6.10和2.6.11是一样的)的kfifo.h和kfifo.c代码实现的免锁算法进行较为详细的分析。对于临界区的访问一般的做法是在访问前加锁,退出访问时解锁,在加锁的过程中可能会有漫长的等待时间,也因此可能会...
单片机和嵌入式系统Linux的区别

单片机和嵌入式系统Linux的区别

随着嵌入式行业硬件平台的性能增强,项目需求和功能日益复杂,ARM公司推出的 CORTEX-M3,更是让以往做单片机的工程师在芯片和技术选型面临两难选择,本专题将从芯片价格、整个系统的硬件软件设计及维护的成本等各个方面给您提供一个参考, 并从技术角度分析单片机和带操作系统的系统的软件开发的异同点。●1.单片机与ARM等新处理器的价格比较●2.带操作系统与不带操作系统的软件开发的区别●2.1.驱动开发的区别●2.2.应用程序开发的区别1. 单片机与ARM等新处...
嵌入式 Linux智能终端菜单界面设计

嵌入式 Linux智能终端菜单界面设计

低成本的单色LCD在工业领域应用非常广泛,英利公司提供的基于嵌入式Linux平台的EM9160支持外接单色LCD屏,目前应用得比较多的规格包括有LCD320x240、LCD240x128、LCD128x64、LCD160x160等。在实际应用中有许多对于菜单界面操作的需求,需要客户根据应用的具体要求自行构建菜单显示界面,本文将重点介绍这方面的内容。 基于菜单界面操作过程实质一个简单的交互式操作,需要实时响应键盘消息、定时消息等。嵌入式Linux操作系统是...
ARM Linux多连接TCP服务器的应用程序设计

ARM Linux多连接TCP服务器的应用程序设计

嵌入式Linux工控主板EM9160的主要功能之一就是作为网络平台,工控领域中比较常见的网络应用是利用TCP/IP协议进行数据通讯。在网络应用中,通常都实现多连接的应用需求,本文主要介绍EM9160作为TCP服务器方式的应用——支持多连接的TCP服务器示例程序:Step3_TCPServer。TCP Socket编程在进行网络应用程序开发方面大多是采用套接字Socket技术,嵌入式Linux的系统平台上也是如此。Socket编程的基本函数有socket( ...
彻底解决Linux启动无输出问题

彻底解决Linux启动无输出问题

做嵌入式Linux移植,最常见也最郁闷的问题,就是自己新做的内核镜像,还没有神马把握,,就要忐忑不安地烧到板子上去测试。这个时候,我宁愿它突出一堆oops,甚至panic,心里觉得舒坦些。可是它要啥都不吐,那就抓瞎了。这种情况,就是printk缓冲区的信息准备好了,但是串口console初始化失败或者还没执行,printk内存缓冲区吐不出来造成的。一般内核开启会打印Linux version 2.6.xx (gcc version 4.2.2) #47 P...
Android 调试.so库文件

Android 调试.so库文件

调试步骤如下:1/ 将异常的地址信息存到文本文件,并存放在项目根目录;2/ 使用panic.py解析该文件;3/ 根据返回的信息(文件名;行号;方法名)调试程序。以操作第三方的Touch input 输入法为例,过程如下:# 该输入法的英文和手写OK,操作中文输入法时,出现异常,软键盘消失,异常日志如下02-05 06:41:19.834 D/dalvikvm( 751): Trying to load lib /system/lib/libimezi.s...
Android Widget 设计与开发

Android Widget 设计与开发

Widget杂谈:最早Widget是指在PC的桌面上的小窗口程序;Web上的先行者似乎是Yahoo!;当然,OPhone也搞了一套Widget,HTML+CSS的东东。我们这里谈的所谓Widget,就是窗口小部件,Android SDK从1.5版本开始支持AppWidget framework,返个框架允许开发者开发Widgets,这些Widgets可以被用户通过长按桌面进行添加,与应用程序进行数据交互。需求:在桌面上开发一个Widget,可以实时显示IM...
Android 安装软件后执行“OPEN”引起的Intent血案(系统BUG)

Android 安装软件后执行“OPEN”引起的Intent血案(系统BUG)

打开程序的入口有很多个:shell 命令行运行;Launcher待机界面执行;状态通知栏运行;桌面快捷方式运行;软件中调用运行;安装软件后执行“OPEN”运行!前面几项,调用程序的代码如下(参考:com.Android.Launcher/.Launcher.java):view plaincopy to clipboardprint?Intent intent = new Intent(this, TestActivity.class); intent.s...
Android 离线用户的灰色头像处理

Android 离线用户的灰色头像处理

主要涉及两个技术点:1、图标加灰色过滤;2、Android的图片资源默认是静态的,单实例;如果两个IM好友的头像一样,最简单的都是用的软件自带头像,有一个在线,一个离线,直接改变头像的灰度,则两个用户的头像都会变灰或者在线,答案是:Drawable.mutate()。代码如下:view plaincopy to clipboardprint?Drawable mDrawable = context.getResources().getDrawable(R....
Android 软件的状态栏图标通知处理

Android 软件的状态栏图标通知处理

QQ的状态栏通知机制:当所有QQ的UI Activity切换到后台后,添加状态通知;切换回来后,删除该状态通知。飞信的状态栏通知方式:运行软件后,图标一直显示在状态栏的通知栏中;显示退出软件则删除该状态通知。似乎QQ的更有点技术含量,多个程序切换到后台的处理而已;以飞信的模式,做个类似的测试,案例如下:程序路径:org.anymobile.im程序入口:org.anymobile.im.LoginActivity(Action:Android.intent...
<< 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 >>