linux
文章平均质量分 52
黑皇后
这个作者很懒,什么都没留下…
展开
-
Linux内核中的通用链表list.h在windows下的移植实现
转自:https://blog.csdn.net/dijkstar/article/details/19249219我这里用的是Linux2.4版本的,2.6版本的其实都一样,下面是修改后的list.h源文件,注意几点:① 注释掉了和Linux相关的字眼,如第四行、第六行等,添加了prefetch(w)两个函数的实现;② 因为是在C语言下实现(不是C++),VC6-VC2005-VC2010编...转载 2020-03-20 15:11:13 · 466 阅读 · 0 评论 -
基于大块的内存池(arena)技术
具体实现的说明看C语言接口与实现。源码下载看我的资源。外部资源:https://blog.csdn.net/ljd680/article/details/78970139原创 2020-01-20 08:54:54 · 202 阅读 · 0 评论 -
vim使用方法的总结。
vim 复制粘贴:ubuntu 终端复制到系统粘贴板和从系统粘贴板到VIM:终端复制到系统粘贴板:鼠标选中内容后,按下ctrl+insert从系统粘贴板到VIM:用VIM打开一个文档,进入插入模式,然后shift + insert(这个方法也适应从windows系统粘贴到vim打开的文档中)vim 批量注释:1.ctrl + v进入visual 模式,选中多列。2.shift +...原创 2020-01-18 14:29:11 · 251 阅读 · 0 评论 -
虚拟机ubuntu开机进入命令行模式
系统启动后,在BIOS引导界面按“ESC”键进入选择菜单,选择第一个“Ubuntu”,按“e”键进入编辑模式。原创 2019-11-15 22:23:05 · 3904 阅读 · 0 评论 -
在ubuntu上部署安装ftp服务器
本文链接:https://blog.csdn.net/qq_26442553/article/details/81411261FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文本传输协议”。用于Internet上的控制文件的双向传输。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。...原创 2019-11-07 15:56:22 · 225 阅读 · 0 评论 -
Monit:开源服务器监控工具
本文地址:https://blog.csdn.net/qin_weilong/article/details/90639769原创 2019-11-05 16:59:23 · 163 阅读 · 0 评论 -
send函数导致程序崩溃
1. 问题描述:客户端send函数的时候,偶尔导致程序崩溃。2. 原因:在linux下写socket的程序的时候,如果尝试send到一个disconnected socket上,就会让底层抛出一个SIGPIPE信号,这个信号的缺省处理方法是退出进程。3. 解决办法:1)client中忽略SIGPIPE信号 signal(SIGPIPE,SIG_IGN);2)阻止SI...原创 2019-10-25 09:50:15 · 1198 阅读 · 0 评论 -
Ubuntu 磁盘扩展
VM虚拟机扩展硬盘容量第一步,关闭系统,给虚拟机硬盘增加空间。第二步,启动系统。查看硬盘大小和分区情况。第三步,分区。第四步,格式化分区。第五步,挂载。第六步,开机自动挂载。第一步:当前硬盘大小:扩展到80GB:点击扩展:第二步:parted –l命令查看硬盘空间和分区情况(也可以使用fdisk -l)...转载 2019-10-22 17:20:49 · 1446 阅读 · 0 评论 -
uboot通过tftp来启动内核
PC机系统:ubuntu12.04这里以OK6410开发板为例。首先uboot已经烧写进NANDFLASH里面,然后板子设置成从NANDFLASH启动,并且ubuntu已经安装了TFTP服务器,开发板能ping通虚拟机。开发板开机启动并进入到uboot选项,选择EXIT command line。#设置开发板的IP地址setenv ipaddr 192.168.0.232#设置原创 2017-05-17 22:23:58 · 2643 阅读 · 0 评论 -
制作根文件系统通过NFS使之挂在到ok6410开发板上
一.在PC机上制作根文件系统(文件系统包括:目录和目录里面的文件,内核加载目录和文件的方式)1.mkdir rootfscd rootfsmkdir bin etc dev lib proc sbin sys usr mnttmp varmkdir usr/bin usr/lib usr/sbin lib/modules2.创建设备文件(以下是linux启动的时候必原创 2017-05-17 22:01:37 · 486 阅读 · 0 评论 -
linux系统简述和源码目录的介绍
Linux的系统架构: 1.user space 2.kernel space内核空间与用户空间是程序执行的两种不同状态,通过系统调用和硬件中断能够完成从用户空间到内核空间的转移。linux内核的架构: 1.SCI 2.PM3.MM4.ARCH5.VFS6.NETWORK STACK7.DDLinux内核源代码1. LINUX内核源代码下载原创 2017-05-18 23:28:40 · 595 阅读 · 0 评论 -
linux内核的配置和编译
一. 配置内核一般都用make menuconfig ARCH=arm来配置。1. 一般配置的菜单项Processor type and feature Networking supportDevices driversSystem files2. [*],,.选择*表示将这个编译进内核,选择表示内核模块,只有在用到的时候才解压到内存里面运行。原创 2017-05-20 13:42:46 · 241 阅读 · 0 评论 -
自己写一个linux的系统调用
知识背景:一.SWI:软中断指令, 可以从用户空间切换到系统空间。 以用户空间的read函数操做流程分析: 1.用户空间的read调用会对应一个内核空间的read调用。 2.从用户空间切换到内核空间需要用到一个指令SWI。 3.切换到内核空间之后会取相对应的系统调用的编号,这个编号是随SWI指令传进来的。 4.在内核里面会维护一张系统调用表,表中的每个系统调用对应一个系统编原创 2017-06-07 00:18:30 · 1122 阅读 · 0 评论 -
vim下面搜索工程目录下的文件的某个字符串
转自:https://blog.csdn.net/ranky2009/article/details/43485055以前用editplus的时候,有一个在文件中查找的功能,可以在所有打开的文件中查找字符串,也可以在某一个目录及它的子目录中查找.那么在VIM中是否也有相关的功能呢?答案当然是肯定的.VIM中有个类似grep的命令,叫做vimgrep,语法如下::vimgrep /{pattern}...转载 2018-04-12 20:38:48 · 4052 阅读 · 0 评论 -
GCC编译链接时选项
2.3 gcc 链接库文件的使用 在 linux 下开发软件时,完全不使用第三方函数库的情况是比较少见的,通常来讲都需要借助一个或多个函数库的支持才能够完成相应的功能。从程序员的角度看,函数库实际上就是一些头文件( .h )和库文件( .so 或者 .a )的集合。虽然 Linux 下的大多数函数都默认将头文件放到/usr/include/目录下,而库文件则放到 /usr/li...原创 2019-04-02 16:22:30 · 1308 阅读 · 0 评论 -
Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?
ubuntu下使用apt-get,得到下面error:E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)E: Unable to lock the administration directory (/var/lib/dpkg/) is another process us...转载 2019-04-23 20:46:54 · 234 阅读 · 0 评论 -
linux应用程序(6)---时间编程
具体可以参考:http://comm.chinaaet.com/adi/blogdetail/42045.html1.COORDINATED UNIVERSAL TIME (UTC):世界标准时间,格林威治标准时间(GMT)2.CALENDAR TIME :日历时间 是从一个标准的的时间点如:1970年1月1日0点)到此时经过的秒数来表示 的时间。原创 2017-02-15 09:17:30 · 261 阅读 · 0 评论 -
linux应用程序(5)---系统调用函数和库函数编程
具体可以参考:http://comm.chinaaet.com/adi/blogdetail/40406.html1.库函数设计的好处是可以提高函数的可移植性。 2.c函数库在windows系统和linux系统中的接口是一样的。 3.而系统调用时调用内核的。 4.对于标准的C函数库,它们的操作都是围绕流来进行的。 流是一个抽象的概念,当程序需要读取数据的时候,就原创 2017-02-15 09:16:05 · 511 阅读 · 0 评论 -
在APUE中找不到apue.h的解决方法。
文章出自:http://www.01happy.com/unix-advanced-programming-apue/下载源码从unix高级编程书籍官网下载书籍的上的所有源码。wget http://www.apuebook.com/src.tar.gz解压这个文件tar -zxvf src.tar.gz解压后文件会放在apue.2e目录下,这个目录里包转载 2016-10-09 21:44:34 · 1326 阅读 · 0 评论 -
linux下的查找文件的命令
文章出自:http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html1. findfind是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。find的使用格式如下: $ find - : 所要搜索的目录及其所有子目录转载 2016-10-11 00:04:49 · 594 阅读 · 0 评论 -
Ubuntu Bash and Dash
Ubuntu的 shell 默认安装的是 dash,而不是 bash。运行以下命令查看 sh 的详细信息,确认 shell 对应的程序是哪个:$ls -al /bin/shdash 比 bash 更轻,更快。但 bash 却更常用。如果一些命令、脚本等总不能正常执行,有可能是 dash 的原因。比如编译 Android 源代码的时候,如果使用 dash,则有可能编译出错,或原创 2016-10-16 21:31:01 · 373 阅读 · 0 评论 -
ubuntu下安装jre的步骤
用这种步骤不用更新eclipse安装目录下的jre安装路径。今天使用ubuntu的简单安装命令安装Java jre的时候遇到了很多问题,于是最后换成了使用离线包来安装jre。具体步骤如下:首先打开http://www.Java.com/en/download/linux_manual.jsp?locale=en可以看到如下的链接点击46.0MB那转载 2016-10-26 21:37:21 · 718 阅读 · 0 评论 -
Ubuntu12.04更改源的方
备份原来的源:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bakgedit /etc/apt/sources.list 将里面的内容替换成阿里源:deb http://mirrors.aliyun.com/ubuntu/ precise main multiverse restricted universede原创 2016-11-01 22:12:13 · 641 阅读 · 0 评论 -
win7 vmare ubuntu 通过samba实现文件的共享
文章出自:http://www.2cto.com/os/201205/131943.html。其实和虚拟机共享文件,最笨的方法最简单的方法就是搞个u盘 这个是配置samba(安装就不说了 软件中心里。。直接搞定),貌似只能虚拟机共享到宿主的机子 环境: win7 32位 VMware 8 ubuntu 11.10 实现的功转载 2016-09-29 22:22:14 · 438 阅读 · 0 评论 -
Linux系统结构 详解
转载:http://blog.csdn.net/hguisu/article/details/6122513Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。 1. linux转载 2016-12-21 16:31:37 · 625 阅读 · 0 评论 -
Ubuntu12.04下配置环境变量
将绝对路径复制到/etc/profile中,这样之后还要在/etc/bash,bashrc添加一样的路径,这样在每次用户打开shell的时候环境变量才能生效。这是在ubuntu12.04下只有一个用户登录的情况下测试成功的。修改环境变量的方法有三: 方法一:修改/etc/bash.bashrc文件(此文件只对当前用户适用)方法二:修改/etc/profile文件(此文件属于系统级别的用...原创 2016-10-25 20:53:36 · 527 阅读 · 0 评论 -
Ubuntu 12.04 安装TFTP server
亲测,能用。1. sudo apt-get install tftpd tftp openbsd-inetd2. sudo vi /etc/inetd.conf#:BOOT: TFTP service is provided primarily for booting. Most sites# run this only on machines acting as转载 2017-01-16 14:39:32 · 386 阅读 · 0 评论 -
Ubuntu 12.04 LTS 中文输入法的安装
转自:http://blog.csdn.net/muyang_ren/article/details/39211201本文是笔者使用 Ubuntu 操作系统写的第一篇文章!参考了红黑联盟的这篇文章:Ubuntu 12.04中文输入法的安装安装 Ubuntu 12.04 着实费力一番功夫,老是在用 Ubuntu 来引导 Windows,结果 Ubuntu 倒是能用,一进入 W转载 2017-01-20 16:34:06 · 1924 阅读 · 1 评论 -
字符编码中的BOM
转自:http://www.cnblogs.com/hidepeng/archive/2011/03/24/1994444.html在看廖雪峰的python中的字符编码的时候,遇到字符编码的BOM这个概念这里理一下。在UCS 编码中有一个叫做"ZERO WIDTH NO-BREAK SPACE"的字符。UCS规范建议我们在传输字节流前,先传输字符"ZERO WIDTH NO-BRE转载 2017-01-20 17:21:56 · 329 阅读 · 0 评论 -
linux应用程序(1)---动态链接库
制作动态链接库:1.gcc -c mylib.c -o mylib.o2.gcc -shared -fPIC mylib.o -o libmylib.so3.将制作好的libmylib.so复制到/usr/lib-fpic 使输出的对象模块是按照可重定位地址方式生成的。-shared 指明产生动态链接库。原创 2017-01-13 22:19:07 · 322 阅读 · 0 评论 -
linux应用程序(2)---静态函数库
linux的函数库,一般存在两个目录,一个是/lib,另外一个是/usr/lib.静态函数库的特点:在链接的时候是要拷贝到程序的代码里面的。linux编译连接的时候默认的是链接动态函数库的。用readelf -d来读一下程序可以知道程序用到什么样的动态函数库。用ls -l 或者ll来显示一个文件的详细信息。可以用static来指定使用静态链接库.一:制作静态函数库:1.原创 2017-01-13 22:07:21 · 281 阅读 · 0 评论 -
linux应用程序(4)---CORE DUMP
Core Dump 有叫核心转存。当程序在运行过程中发生异常,这时Linux系统可以把程序出错时的内存内容存储在一个叫CORE的文件中,这种过程叫Core Dump.linux应用程序在运行过程中,经常会遇到Segment fault(段错误)这样的错误。产生这样错误的原因通常:数组访问越界,访问空指针,栈溢出,修改只读内存。而Core Dump就是用来调试这些错误的。linux系统中原创 2017-01-12 20:30:44 · 553 阅读 · 0 评论 -
linux应用程序(3)---应用程序地址布局
在linux的应用程序中有代码段,数据段,BSS段,堆,栈。以上组成部分在内存中的布局是:1.从低地址到高地址分别为:代码段,数据段,BSS段,堆,栈。2..堆是向高内存地址生长3.栈是向低内存地址生长。那么怎么查看程序在内存中的位置呢?例如通过以下这个程序来总结不同类型的数据在内存中的位置。#include#includeint global_init_a原创 2017-01-12 22:14:13 · 363 阅读 · 0 评论 -
GDB的使用
用GDB调试程序 GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。 于是UNIX下的软件比Windows下的软件更能有机地结合,各自发挥各自的长处,组合成更转载 2015-12-07 10:39:53 · 634 阅读 · 0 评论