Shell 显示Shell类型 $ps 切换Shell $[Shell 名称]  ex. $tcsh 快捷键 Ctrl + Z:挂起,可用jobs查看到,fg恢复运行 Ctrl + W:删除单词 Ctrl + U/X:删除行 Ctrl + C:终止运行 终止运行 Ctrl + C $ kill -TERM %[job number]   ex. $kill -TERM %1 Root权限 su su [-c] ['command line'] -c 仅Root权限执行一次 'command' 执…
使用size命令查看二进制文件时,结果并不一定和预测占用内存大小一致,因为可能存在内存对齐,导致内存字节数比实际的更多 在C语言中,字符串常量存放在text segment中,在C++中却是存储在data segment中 字符串常量的作用域是当前文件,多文件分离编译,则不可作用…
)Linux程序设计入门--信号处理 Linux下的信号事件 前言:这一章我们讨论一下Linux下的信号处理函数. Linux下的信号处理函数: 信号的产生 信号的处理 其它信号函数 一个实例 .信号的产生 Linux下的信号可以类比于DOS下的INT或者是Windows下的事件.在有一个信号发生时 候相信的信号就会发送给相应的进程.在Linux下的信号有以下几个. 我们使用 kill -l 命令可以得到以下的输出结果: ) SIGHUP ) SIGINT ) SIGQUIT ) SIGILL…
)Linux程序设计入门--消息管理 前言:Linux下的进程通信(IPC) Linux下的进程通信(IPC) POSIX无名信号量 System V信号量 System V消息队列 System V共享内存 .POSIX无名信号量 如果你学习过操作系统,那么肯定熟悉PV操作了.PV操作是原子 操作.也就是操作是不可以中断的,在一定的时间内,只能够有一个进程的代码在CPU上面 执行.在系统当中,有时候为了顺利的使用和保护共享资源,大家提出了信号的概念. 假设 我们要使用一台打印机,如果在同一时刻…
)Linux程序设计入门--进程介绍 Linux下进程的创建 前言: 这篇文章是用来介绍在Linux下和进程相关的各个概念.我们将会学到: 进程的概念 进程的身份 进程的创建 守护进程的创建 .进程的概念 Linux操作系统是面向多用户的.在同一时间可以有许多用户向操作系统发出各种命 令.那么操作系统是怎么实现多用户的环境呢? 在现代的操作系统里面,都有程序和进程 的概念.那么什么是程序,什么是进程呢? 通俗的讲程序是一个包含可以执行代码的文件 ,是一个静态的文件.而进程是一个开始执行但是还没有…
)Linux程序设计入门--文件操作 Linux下文件的操作 前言: 我们在这一节将要讨论linux下文件操作的各个函数. 文件的创建和读写 文件的各个属性 目录文件的操作 管道文件 .文件的创建和读写 我假设你已经知道了标准级的文件操作的各个函数(fopen,fread,fwrite等等).当然 如果你不清楚的话也不要着急.我们讨论的系统级的文件操作实际上是为标准级文件操作 服务的. 当我们需要打开一个文件进行读写操作的时候,我们可以使用系统调用函数open.使用完 成以后我们调用另外一个cl…
)Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makefile的编写 程序库的链接 程序的调试 头文件和系统求助 .源程序的编译 在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器. 下面我们 以一个实例来说明如何使用gcc编译器. 假设我们有下面一个非常简单的源程序(hello.c): int main(int argc,ch…
)Linux程序设计入门--线程操作 前言:Linux下线程的创建 介绍在Linux下线程的创建和基本的使用. Linux下的线程是一个非常复杂的问题,由 于我对线程的学习不时很好,我在这里只是简单的介绍线程的创建和基本的使用,关于线 程的高级使用(如线程的属性,线程的互斥,线程的同步等等问题)可以参考我后面给出的 资料. 现在关于线程的资料在网络上可以找到许多英文资料,后面我罗列了许多链接,对 线程的高级属性感兴趣的话可以参考一下. 等到我对线程的了解比较深刻的时候,我回来 完成这篇文章.如果…
)Linux程序设计入门--网络编程 Linux系统的一个主要特点是他的网络功能非常强大.随着网络的日益普及,基于网络的 应用也将越来越多. 在这个网络时代,掌握了Linux的网络编程技术,将令每一个人处 于不败之地,学习Linux的网络编程,可以让我们真正的体会到网络的魅力. 想成为一 位真正的hacker,必须掌握网络编程技术. 现在书店里面已经有了许多关于Linux网络编程方面的书籍,网络上也有了许多关于 网络编程方面的教材,大家都可以 去看一看的.在这里我会和大家一起来领会Linux网…
在Android的开发过程中经常会遇到Linux相关的问题,为了更彻底的了解Linux准备整点没用的,找到一本 <Linux程序设计>开始系统的学习. 期间记录下自认为重要的内容,本以为是记录下精华的部分可以单独成章,结果阅读自己的笔记时需要与书结合,否则很难理解.于是准备将笔记一次完成放出. 取名 独乐乐版 因为改版笔记仅为了自我满足.以后有时间了可能会整理 众乐乐版. 链接:https://pan.baidu.com/s/1-DM0464hTHRl0r2s6yxgGw 提取码:enll…
1. linux程序 Linux应用程序表现为两种特殊类型的文件:可执行文件和脚本文件. 可执行文件:是计算可以直接运行的程序,相当于windows的.exe文件. 脚本文件:一组指令的集合.这些指令由另一个程序(即解释器)来执行,它们相当于Windows下的.bat文件..cmd文件. 使用(:)分隔PATH变量的条目.MS-DOS和windows使用分号(;). Linux使用正斜线(/)分隔文件名里的目录名. 2. C语言编译器 编译.链接和运行hello程序: zhangxin@zhan…
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. 硬件.内核与shell 2. 用户界面<=====>核心Kernal(cpu进程,内存管理.磁盘输入输出)<=====>硬件 3. Shell定义:只要能够操作应用程序的接口,狭义的shell指的是命令行方面的软件,包括bash,广义的shell则包括图形界面的软件 为何要学shell…
一.Linux 简介 实验介绍 本节主要介绍 Linux 的历史,Linux 与 Windows 的区别等入门知识.如果你已经有过充分的了解,可以跳过本节,直接进入下一个实验. 一.Linux 为何物 Linux 就是一个操作系统,就像你多少已经了解的 Windows(xp,7,8)和 Max OS ,至于操作系统是什么,就不用过多解释了,如果你学习过前面的入门课程,应该会有个基本概念了,这里简单介绍下操作系统在整个计算机系统中的角色. 我们的 Linux 也就是系统调用和内核那两层,当然直观的…
Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于1991年,于1994年发布1.0版本的正式内核.追溯到Unix,Unix起源于1969年,是贝尔实验室的一个研究项目,10年后,Unix被无偿提供给各大学,成为众多大学和实验室研究项目的基础.但是Unix仍然是收费的.此外还有很长的发展,伯克利大学的Unix完全剔除了贝尔实验室的源码形成了自己的U…
看了<linux程序设计(第4版)>(作者:Neil Matthew ,Richard Stones ,陈建 ,宋健建译).做个笔记,以备后面查看. 首先,清楚几个概念. shell编程属于脚本编程,脚本文件就是指令的集合,GCC是GNU编译系统驱动程序. Linux中的库分两种:静态库和共享库.静态库以.a结尾,也叫归档文件(archive),类似于windows中的.lib文件,他的缺点是同时运行的多个程序使用同个函数库函数时,内存中会有多个该函数及该程序文件的副本,浪费了内存.共享库以.…
linux读书笔记(3章) 标签(空格分隔): 20135328陈都 第三章 进程管理 3.1 进程 进程就是处于执行期的程序(目标码存放在某种存储介质上).但进程并不仅仅局限于一段可执行程序代码( Unix称其为代码段,text section).通常进程还要包含其他资源,像打开的文件,挂起的信号,内核内部数据,处理器状态,一个或多个具有内存映射的内存地址空间及一个或多个执行线程(threa do fexecution),当然还包括用来存放全局变量的数据段等. 程序本身并不是进程,进程是处于执…
20155327预备作业3:Linux安装及命令入门 安装Linux操作系统 由于之前安装过所以这里就不再赘述了 掌握Linux命令的学习方法 学习路径: 常用Ubuntu快捷键: CTRL+ALT+T:打开终端,天天使用终端,用鼠标打开太低效了: CTRL+SHIFT+T:新建标签页,编程时有重要应用: ALT+数字N:终端中切换到第N个标签页,编程时有重要应用: Tab:终端中命令补全,当输入某个命令的开头的一部分后,按下Tab键就可以得到提示或者帮助完成: 上下键盘:切换命令历史,刚输入一…
Linux学习笔记--基于鸟哥的Linux私房菜 ***** ARM与嵌入式linux的入门建议 (1) 学习基本的裸机编程:ARM7或ARM9,理解硬件架构和控制原理 (这一步是绝对的根基) (2) 使用Linux系统进行一些基本的实验 (3) 研究完整的Linux系统的运行过程 : 完整Linux = bootloader + linux kernel + rootfile根文件系统 (4) 开始做Linux系统移植 :修改开源的Linux源代码,直到可以运行在你的板子上,这就叫移植 (5)…
Linux 应用笔记 Linux 应用笔记 小书匠 Raspberry Pi 常用命令 CentOs Raspberry Ubuntu python 实用教程 Vim 权限问题 内存分配 shell 脚本 收藏备份 收藏 杂讯 备份 调试笔记 1708 常用命令 linux是32位还是64位 getconf LONG_BIT Linux 如何查看用户id cat /etc/passwd | grep <你的用户名>来查看你的ID. vcgencmd measure_clock < clo…
linux程序设计--个人总结 到今天为止,<linux程序设计>学习基本完毕了.从五月下旬開始接触linux,学习安装Ubuntu14.04,六月份開始学习<linux程序设计>,实习考试之余花费了足足快两个月的时间,看完大部分章节.敲了一些代码.文章都在这里--linux程序设计.     细致看过的章节:第一章入门.第二章shell程序设计.第三章文件操作.第四章linux环境.第七章数据管理.第八章MySQL.第九章开发工具.第十一章进程和信号量.第十二章POSIX线程.第…
Java学习笔记之---入门 一. 为什么要在众多的编程语言中选择Java? java是一种纯面向对象的编程语言 java学习起来比较简单,适合初学者使用 java可以跨平台,即在Windows操作系统上使用java编写的程序在Linux操作系统上也可以使用 二. 为什么Java可以跨平台? (-)什么是跨平台? 什么是跨平台(计算机系统),跨平台概念是软件开发中一个重要的概念,即不依赖于操作系统,也不信赖硬件环境.一个操作系统下开发的应用,放到另一个操作系统下依然可以运行. (二)Java跨平…
简介 今天整理文件整理出了好多年前学习linux的笔记 就整理下发布在博客上怕文件形式会误删. linux入门基础对于新手而言不推荐看书!!不推荐看书!!(大牛跳过)先看视频看linuxcast的视频讲的不错下方链接即可下载  等视频看完再去跟着书的目录学一遍或者学一章内容跟着书走一章配合着来这个根据个人情况而定 如果感觉书难度大就果断抛弃书看视频!看视频!学完入门课程再看这本书 从头到尾敲(聪明的略过) 在学习过程中多加几个linuxQQ群 实在有不会不解的经过多次百度无果之后再提问 一定要学…
Linux 究级基础入门命令整理 条条框框,三三两两,怎讷个这么多,哈哈!no zuo no die. 纯粹个人菜鸟笔记,望大神笑纳! 后续,未完!! 查看系统信息 uname -a - 查看内核/操作系统/CPU信息 head -n 1 /etc/issue - 查看操作系统版本 free -m - 查看内存使用量和交换区使用量 df -h - 查看各分区使用情况 du -sh <目录名> - 查看指定目录的大小 du -sh * 查看当前目录下各个目录及文件所占用磁盘空间大小 grep M…
MongoDB学习笔记:快速入门   一.MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成.MongoDB 文档类似于 JSON 对象.字段值可以包含其他文档,数组及文档数组. 二.MongoDB安装及配置 查看:https://www.runoob.com/mongodb/mongodb-linux-ins…
内核版本:linux-2.6.11 Linux在加载一个可执行程序的时候做了种种复杂的工作,内存分配是其中非常重要的一环,作为一个linux程序员必然会想要知道这个过程到底是怎么样的,内核源码会告诉你这一切. 线性区 一个可执行程序,是经过编译器处理后的遵守一定规则的数据.符号表和指令序列的组合,当linux加载一个可执行程序的时候,会为其创建一个新的进程,其对应的进程描述符task_struct中会保存许多资源的描述符,其中的mm_struct就是这个进程的内存描述符,用来管理该进程拥有的所有…
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd5360cba1adb7d 目录 Linux学习笔记... 1 请切换web视图查看,表格比较大,方法:视图>>web板式视图... 1 1.      常用命令... 3 1.1文件处理命令... 3 1.2权限管理命令... 8 1.3文件搜索命令... 12 1.4帮助命令... 19 1.5压…
第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ============================================== 启用和禁用触摸盘  sudo rmmod psmouse 禁用触摸盘 sudo modprobe psmouse 启用触摸盘 ============================================== 连…
研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1.1 Q:Linux系统进入桌面后如何进入终端terminal  A:1.右击桌面空白处-->open terminal   2.ctrl+alt+F1到F6,此时进入的是全黑屏的terminal,要返回图形界面的按ctrl+alt+F7. 笔记1.2 Q:Linux中怎么把[root@localh…
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 常用的文本编辑器:Emacs, pico, nano, joe, vim VIM-为什么选择vi编辑器 1. 所有Unix Like系统都会内置vi编辑器,而其他文本编辑器则不一定存在 2. 很多软件的编辑接口都会主动调用vi,例如contab, visudo, edquota 3. vim具有程序编辑能力,可以主动以字体颜色辨别语言正确性 4. 程序简单,编辑速度相当快速…
跟着鸟哥学Linux系列笔记0-扫盲之概念 在发生问题怎么处理: 1.  在自己的主机.网络数据库上查询How-To或FAQ -Linux 自身的文件数据: /usr/share/doc -CLDP中文文件计划www.linux.org.cn/CLDP 2. 注意信息输出,自行解决疑难杂症 3. 搜寻过后,注意网络礼节,在讨论区大胆发言吧 4. Netman给出的建议: -有系统地设计文件目录,不要随便到处保存文件以至以后不知道放哪里了,或托到文件也不知道为何物 -养成一个做记录的习惯:尤其是发…