随笔分类 -  Linux

摘要:@(134 Linux) Part 1 交叉编译简介 1.1 What is cross compiling? 对于没有做过嵌入式编程的人,可能不太理解交叉编译的概念,那么什么是交叉编译?它有什么作用? 在解释什么是交叉编译之前,先要明白什么是本地编译。 本地编译 本地编译可以理解为,在当前编译平台 阅读全文
posted @ 2018-04-02 22:05 Neo007 阅读(1668) 评论(0) 推荐(0)
摘要:一、网络模型 P.S.网卡驱动 —— 数据链路层 二、网络协议 2.1 协议的要素 1.多条规则 2.包的格式 2.2 协议间关系 图片:协议包关系 三、相关协议 百闻不如一见 直观体验学习——可使用wireshark 动手查看 3.1 以太网协议格式 以太网图1 以太网图2 3.2 IP协议格式 阅读全文
posted @ 2017-08-05 15:19 Neo007 阅读(153) 评论(0) 推荐(0)
摘要:问题 消息队列id 和键值KEY区别? 首先要注意一个概念:IPC结构都是内核的结构。也就是说IPC结构由内核维护,对于每个进程都是公共的,不属于某个特定进程。只有这样,IPC结构才能支持它们“进程间通信”的功能。 有两个东西可以标识一个IPC结构:标识符(ID)和键(key)。 Key是IPC结构 阅读全文
posted @ 2017-08-04 21:32 Neo007 阅读(508) 评论(0) 推荐(1)
摘要:重点在于学习——思路与方法 举一反三 一、文件描述符 系统分配给文件的数字编号 二、函数学习 P.S.Man命令使用方法 第2类 系统调用文件编程类 2.1 打开文件 2.1.1 函数名 open 2.1.2 函数原形 int open(const char pathname, int flags) 阅读全文
posted @ 2017-08-03 17:54 Neo007 阅读(716) 评论(0) 推荐(0)
摘要:格式chmod 权限 要修改权限的文件linux中的权限如下: rw (600) 只有属主有读写权限。 rw r r (644) 只有属主有读写权限;而属组用户和其他用户只有读权限。 rwx (700) 只有属主有读、写、执行权限。 rwxr xr x (755) 属主有读、写、执行权限;而属组用户 阅读全文
posted @ 2017-08-03 11:06 Neo007 阅读(482) 评论(0) 推荐(0)
摘要:动静区别 一、动态函数库设计 二、动态函数库使用 阅读全文
posted @ 2017-08-02 20:17 Neo007 阅读(275) 评论(0) 推荐(0)
摘要:一、外部函数来源—— 函数库&系统调用 二、函数库分类 静态函数库 ——多份拷贝 动态函数库 ——单份拷贝 区别 链接方式区别 三、函数库存放位置 Linux应用程序使用的主要函数库均存放于/lib, /usr/lib目录下, 其中采用 .so. 方式命名的是动态函数库,而以 .a方式命令的是静态函 阅读全文
posted @ 2017-08-02 11:50 Neo007 阅读(287) 评论(0) 推荐(0)
摘要:一、通过Samba映射网络驱动器 菜单栏 计算机 映射网络驱动器 English 菜单栏 Home Easy access Map as drive 编辑代码使用 Windows 编译 运行程序在 Linux 二、Linux应用程序编程规范 工程师的要求——可读性、效率 文档推荐《C Coding 阅读全文
posted @ 2017-08-02 09:49 Neo007 阅读(222) 评论(0) 推荐(0)
摘要:一、各段内存布局 内存布局图 1.BSS段(Block Started by Symbol)未初始化段 2.linux ELF base address is 0x8048000 应用程序虚拟地址起始地址均为0x8048000 3.堆向高内存地址生长 4.栈向低内存地址生长 P.S. // 查看进程 阅读全文
posted @ 2017-08-01 21:19 Neo007 阅读(406) 评论(0) 推荐(0)
摘要:引入: Q:如果一个程序运行3天后才会出错,这个时候难道需要我们一直用GDB调试程序3天吗? A:答案当然是否定的。 我们有更厉害的工具——Core dump 一、Coredump定义 Core Dump又叫核心转存。当程序在运行过程中发生异常, 这时Linux系统可以把程 序出错时的内存内容存储在 阅读全文
posted @ 2017-08-01 16:13 Neo007 阅读(654) 评论(0) 推荐(0)
摘要:一、GDB简介 GDB是GNU发布的一款功能强大的程序调试工具。GDB主要完成下面三个方面的功能: 1. 启动被调试程序。 2. 让被调试的程序在指定的位置停住。 3. 当程序被停住时,可以检查程序状态(如变量值) 二、GDB使用流程 三、常用GDB命令 阅读全文
posted @ 2017-08-01 15:13 Neo007 阅读(141) 评论(0) 推荐(0)
摘要:小应用 大智慧——重视 以工程师的标准要求自己 阅读全文
posted @ 2017-08-01 11:48 Neo007 阅读(253) 评论(0) 推荐(0)
摘要:GCC简介 GCC基本用法 GCC程序产生过程 GCC编译选项 一、GCC简介 1.1 GCC特点 Gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的 代表作之一。Gcc可以在多种硬体平台上编译出可执行程序,其执行效率与一般的编译器 相比平均效率要高20 阅读全文
posted @ 2017-07-24 16:03 Neo007 阅读(316) 评论(0) 推荐(0)
摘要:Root密码破解 Linux 忘记Root密码 ? 技术学习基本原则:不作恶 一、破解步骤 1.在系统启动时进入grub选项菜单 2.在grub选项菜单按e进入编辑模式 3.编辑kernel那行添加/init 1 (单用户启动) 4.按b重启 5.进入系统后,将root密码设置为空密码。 vim / 阅读全文
posted @ 2017-07-23 14:51 Neo007 阅读(422) 评论(0) 推荐(0)
摘要:权力下放 一、权力分配 sudo Sudo是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的“权力”,让 他们执行一些只有超级用户或其他特许用户才能完成的任务(主要体现为命令),比如:运行一些像mount, halt,su之类的命令,或者编辑一些系统配置文件, 阅读全文
posted @ 2017-07-23 11:34 Neo007 阅读(352) 评论(0) 推荐(0)
摘要:英文全称解释更容易理解 知其然,更要知其所以然 man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 显示当前工作路径。 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目 阅读全文
posted @ 2017-07-23 11:22 Neo007 阅读(584) 评论(0) 推荐(0)
摘要:Linux如何安装软件? 一、RPM安装 优点: 安装过程很简单 缺点: 1. 需要自己寻找和系统版本对应的RPM包 2. 安装过程中需要解决包的依赖问题(例如tftp包) 二、yum在线安装 软件包仓库 仓库的信息文件放在特定目录 /etc/yum.repod.d/ 由于红帽提供的软件仓库是需要额 阅读全文
posted @ 2017-07-21 14:50 Neo007 阅读(2140) 评论(0) 推荐(0)
摘要:Why?——交叉开发 一、交叉开发模型 宿主机(PC)—————— 网络、串口、USB、JTAG —————— 目标机(ARM系统) PC机作为TFTP & NFS 服务器,目标机从网络下载软件 二、TFTP服务器 2.1 安装tftp服务器 //先安装xinetd rpm ivh /mnt/Pac 阅读全文
posted @ 2017-07-20 15:54 Neo007 阅读(237) 评论(0) 推荐(0)
摘要:切记:Linux的安全机制的存在——iptables和selinux。 一、操作前提 1.1 从Windows能够ping通Linux 1.2 关闭Linux防火墙 command1:/etc/init.d/iptables stop command2:serviece iptables stop 阅读全文
posted @ 2017-07-20 09:34 Neo007 阅读(635) 评论(0) 推荐(0)
摘要:登录任务 Windows主机——远程登录——Linux主机 一、登陆前提准备 1.1 确保网络通畅 确保从Windows 能够Ping通Linux 1.2 关闭Linux防火墙 //前提:以root管理员权限登陆 运行命令 /etc/init.d/iptables stop 二、Putty SSH 阅读全文
posted @ 2017-07-19 20:25 Neo007 阅读(176) 评论(0) 推荐(0)