linux简析

Linux 驱动架构简析 1) 首先,需要熟悉操作系统的设计与实现,推荐大家看 MINIX作者的那部书,同时把MINIX的kernel代码研读一下。 不然,你不知道操作系统都有哪些模块, 不知道操作系统要做些什么事情,提供什么功能。简单地说,操作系统首先要驱动 CPU,然后提供那几大管理(进程,内存,文件),实现一两百个系统呼叫,提供驱动接口, 用户态与内核之间进行切换。 2) 去intel的官网,找一下 ‘Intel® 64 and IA-32 Architectures Software Developer’s Manual’ 阅读详情

常见的操作系统

  1. Unix c语言开发 是贝尔实验室开发的,收费
  2. Linux 是仿照unix 开发的但是没有抄袭unix的源代码,而是借鉴了他的方式,免费开源
  3. windows 也是仿照unix 的思维开发的,收费
  4. 苹果的操作系统OS(macOS) 也是基于unix开发的
    Linux是基于Unix的,Linux是一种自由和开放源码的操作系统。作者是Linus Torvalds(林纳斯·托瓦兹)
    Linux通常分为内核版本和发行版本
    内核版本:是系统的心脏,是linux中最基层的代码
    发行版本:在内核的基础上,开发不同应用程序,组成的一个完整的操作系统。
    Linux系统的应用
    服务器系统Web应用服务器、数据库服务器、接口服务器、DNS、FTP等等;
    嵌入式系统路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等,
    高性能运算、计算密集型应用Linux有强大的运算能力。
    桌面应用系统
    移动手持系统
    windows做为服务器的弊端
  5. 收费
  6. 不稳定
  7. 浪费系统资源
  8. 用的人多,系统漏洞被发现的多,病毒多,不安全
    虚拟机软件 (virtual memory)
    使用虚拟化技术的软件,用来模拟一台电脑。
    VMware :收费的
    VirtualBox :免费的
    (虚拟化)在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。在实际的生产环境中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理硬件对资源充分利用
    常见的虚拟化技术种类
    软件虚拟化、硬件虚拟化、内存虚拟化、网络虚拟化(vip)、桌面虚拟化、服务虚拟化、虚拟机等等。
    Linux中需要关注的目录
    / : 根目录
    root : 系统管理员,系统根目录下有一个root目录,此目录只能root访问 “~”
    home/用户 : 普通用户在home目录下都有一个自己专属的目录
    usr : 主要用于安装应用软件
    tmp : 临时文件存放目录
Linux命令

1.(list)文件列表:
ls 列出当前文件夹下文件名称
ls -a 列出当前文件夹下所有文件的名称(包含隐藏文件)
ls -l 列出当前文件夹下文件名称和详细信息
ll 列出当前文件夹下文件名称和详细信息( ls -l 的简写) 注意此命令属于扩展命令, 有些linux版本不支持
ll 星.log 列出当前文件夹下所有以.log结尾的文件的名称
2. (change directory)切换目录
cd ~ : 切换至当前用户的跟目录
cd / : 切换至跟目录
cd … : 切换至上一级 (注意空格)
cd /文件夹名称 : 切换到对应文件夹下
cd /文件夹名称1/文件夹名称2 : 切换到文件夹名称2对应文件夹下
cd - : 切换到上一次打开的文件夹
3.(make directory)创建目录
mkdir app 当前目录下创建 app 目录
mkdir -p a/b/c 级联创建目录
rmkdir app 从当前目录删除app目录,注意:不能删除非空目录
4.(remove)删除 (a.txt txt文件 app 文件夹)
rm a.txt 删除a.txt文件 (需要确认,输入yes 或y)
rm -f a.txt 不询问,直接删除 a.txt
rm -r app 删除app目录(需要确认,输入yes 或y,递归)
rm -rf app 不询问递归删除app及其子目录下的东西
rm -rf 星 删除当前文件夹及其自目录
rm -rf /星 格式化磁盘 (一些大型的公司为了避免程序员错误输入该命令,回将该命令重置,防止错误删除)
5.查看文件内容
cat : 查看文件,会将文件内容在屏幕上全部罗列
cat -n a.txt 会将文件内容在屏幕上全部罗列(显示行号)
more: 查看文件 分页查看(回车一行,空格一页,q退出查看),只能向下翻,不能向上翻
more +100 a.txt 从a.txt 的第100行开始查看
less: 查看文件 分页查看(回车一行,空格一页),能向上也能向下 (上下箭头翻看)
tail -10 /etc/passwd : 查看后10行数据
tail -f catalina.log : 动态实时监控日志 ctrl+c 结束查看
6.复制、剪切(copy复制/移动move)
cp命令可以将文件从一处复制到另一处。
cp a.txt b.txt 将a.txt复制,并重命名为b.txt文件
cp a.txt …/ 将a.txt文件复制到上一层目录中
mv 移动或者重命名
mv a.txt …/ 将a.txt文件移动到上一层目录中
mv a.txt b.txt 将a.txt文件重命名为b.txt
7.打包/压缩/解压
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩 方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。常用参数:
-c:创建一个新tar文件
-v:显示运行过程的信息
-f:指定文件名
-z:调用gzip压缩命令进行压缩/解压缩
-t:查看压缩文件的内容
-x:解开tar文件
打包:
tar –cvf xxx.tar ./星
打包并且压缩:
tar –zcvf xxx.tar.gz(压缩包名称) ./星(要压缩的内容)
解压
tar –xvf xxx.tar
tar -zxvf xxx.tar.gz(要解压缩的压缩包) -C /usr/aaa(要解压缩到的目录
8.查找文件、内容
find / -name “ins*” 从根目录查找文件名称是以ins开头的文件
find /root -name “ins*” 从/root 目录查找文件名称是以ins开头的文件
find / -name “ins*” –ls
find / –user itcast –ls 查找用户itcast的文件
find / –user itcast –type d –ls 查找用户itcast的目录
find /-perm -777 –type d-ls 查找权限是777的文件
grep lang anaconda-ks.cfg 在文件中查找lang
grep lang anaconda-ks.cfg –color 高亮显示
grep lang anaconda-ks.cfg –color -A1 -B1 高亮显示 ,并向前一行和向后一行
grep -rn lang anaconda-ks.cfg 在文件中查找lang 并显示行号
9.系统命令/网络服务
ps –ef 查看所有进程
ps –ef | grep ssh 查找某一进程
kill 2868 杀掉2868编号的进程
kill -9 2868 强制杀死进程
-----------------------------
service network status 查看网络服务的状态
service network stop 停止网络服务
service network start 启动网络服务
service network restart 重启网络服务
service --status–all 查看系统中所有后台服务
netstat –nltp 查看系统中网络进程的端口监听情况
---------------------------------
防火墙设置
防火墙根据配置文件/etc/sysconfig/iptables来控制本机的”出”、”入”网络访问行为。
service iptables status 查看防火墙状态
service iptables stop 关闭防火墙
service iptables start 启动防火墙
chkconfig iptables off 禁止防火墙自启
-----其他命令
关闭防火墙
service firewalld stop
systemctl stop firewalld
10.其他常见命令:
pwd 显示当前所在目录
touch 创建一个空文件 touch a.txt
clear/ crtl + L 清屏
查看ip 地址centos6 : ifconfig / centos7 : ip addr

vim 编辑器 (vin/vi)
vi 文件名
进入后默认是命令行模式,
按I,a可以进入可编辑模式,按esc转换为命令行模式。
切换到底行模式:按 :(冒号)进行底行模式,可以输入wq保存并退出,q 退出 q!表示强制退出.
打开文件:vim 文件名称
修改文件:输入i进入插入模式
退出:esc :q
保存并退出:esc :wq
不保存退出:esc :q!
:/8080 底行模式下搜索
三种进入插入模式:
i:在当前的光标所在处插入
o:在当前光标所在的行的下一行插入
a:在光标所在的下一个字符插入
快捷键:
dd – 快速删除一行
yy - 复制当前行
nyy - 从当前行向后复制几行
p - 粘贴
R – 替换
重定向输出&系统命令
cat /etc/passwd > a.txt 将输出定向到a.txt中
cat /etc/passwd >> a.txt 输出并且追加
ps –ef 查看所有进程
ps –ef | grep tomcat 查找某一进程
kill 2868 杀掉2868编号的进程
kill -9 2868 强制杀死进程
管道
管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。示例
ls --help | more 分页查询帮助信息
ps –ef | grep java 查询名称中包含java的进程
Linux权限
文件类型

  • -:表示文件
  • d:表示文件夹
  • l:链接(快捷方式)
    权限说明:
    r:对文件是指可读取内容 对目录是可以ls
    w:对文件是指可修改文件内容,对目录 是指可以在其中创建或删除子节点(目录或文件)
    x:对文件是指是否可以运行这个文件,对目录是指是否可以cd进入这个目录
    u: user表示当前用户对此文件(文件夹)的操作权限
    g: group 指的当前用户所在的组的权限
    o: other 其它组的用户所拥有的权限
    权限的表示:
    字母表示权限:
    r ;read 表示有查看文件的权限
    w:write 表示有对文件进行修秘诀的权限
    x; execute 表示有对此文件执行的权限
    数字表示方式:
    4 表示的是读的权限(r)
    2表示的是写的权限(w)
    1表示执行的权限(x)
    修改主机名、ip
    主机名配置:
    hostname 查看主机名
    hostname xxx 修改主机名 重启后无效
    如果想要永久生效,可以修改/etc/sysconfig/network文件
    IP地址配置:

ifconfig 查看(修改)ip地址(重启后无效)
ifconfig eth0 192.168.12.22 修改ip地址

修改 /etc/sysconfig/network-scripts/ifcfg-eth0文件
DEVICE=eth0 #网卡名称
BOOTPROTO=static #获取ip的方式(static/dhcp/bootp/none)
HWADDR=00:0C:29:B5:B2:69 #MAC地址
IPADDR=192.168.25.129 #IP地址
NETMASK=255.255.255.0 #子网掩码
NETWORK=192.168.177.0 #网络地址
BROADCAST=192.168.0.255 #广播地址
NBOOT=yes # 系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备。

简析 Linux 的 CPU 时间 下面这个是top命令的界面,相信大家应该都不陌生。这一行表示的是 CPU 不同时间的占比,其中大家比较熟悉的应该是与user timeuser time不熟悉的朋友可以参考下面这张图(来源于极客时间的课程):接下来我们将探究隐藏在这些时间背后的操作原理。 阅读详情

相关推荐

别再手动写ZPL了!用C#和斑马官方SDK搞定ZT410 RFID打印机(附中文乱码解决方案)

本文详细介绍了如何使用C#和斑马官方SDK驱动ZT410 RFID打印机,解决中文乱码和RFID数据写入等常见问题。通过实战指南,开发者可以快速掌握从基础连接到高级调试的全流程,提升打印效率和可靠性。特别适用于物流、零售和资产管理领域的应用。

weixin_29267307的博客 226

Linux 与 Unix 到底有什么不同?

★原文:Linux vs. Unix: What's the difference?链接:https://opensource.com/article/18/5/diff...

代码技巧 2224

数据库行转列的sql语句

 问题描述假设有张学生成绩表(CJ)如下Name Subject Result张三 语文 80张三 数学 90张三 物理 85李四 语文 85李四 数学 92李四 物理 82现在 想写  sql 语句     查询后结果 为    姓名 语文 数学 物理张三 80 90 85李四 85 92 82       该怎么实现 ?研究意义        这是个并不复杂的问题,但却是数

jb303的专栏 2248

Linux目录结构简析

Linux目录结构简析 Linux继承了unix操作系统结构清晰的特点。在linux下的文件结构非常有条理。但是,上述的优点只有在对linux相当熟悉时,才能体会到。现在,就把linux下的目录结构简单介绍一下。/vmlinuz  我们已经知道,每一个linux都有一个内核(vmlinuz),我们在这个内核上添加上可以完成各种特定功能的模块,每个模块就体现在 linux中各种不同的目录上。

927

搞定8GB/s数据流:一个FPGA工程师的XDMA驱动调优实战(附避坑清单)

本文详细记录了FPGA工程师在XDMA驱动调优过程中实现8GB/s高带宽数据流的实战经验。通过优化DDR访问、中断响应、DMA映射等关键环节,解决了PCIE数据采集卡在高带宽场景下的性能瓶颈,并提供了实用的避坑清单和技术方案。

weixin_29194255的博客 204

个人整理的数据集(手写中文数据、发票数据、快递单数据、车牌数据)

本人在工作生活中收集了各个方面比较多的真实的数据集如下: 一、手写中文数据集 1、档案类数据: 此数据集为手写档案数据,数量较大,大约128G,图像均未标注。 ex: 2、手写作文数据: 此数据集为手写作文数据,是大约800M左右,图像按行提供位置和内容标注,十分珍贵。 ex: 二、发票数据集: 1、增值税发票 此数据集包含了大量真实的增值税发票数据,大约9G,标注了发票位置数据,未提供详细标注。 ex: 2、购车发票 此数据集未提供标注。

weixin_43143224的博客 5882

Linux服务器产品市场简析

Linux服务器产品市场简析一、综述2002年中国Linux操作系统市场增长迅速,市场总量达到5254.32万元,比2001年增长45.6%。全球的增长、国内良好的经济环境和政策环境,为中国Linux的快速成长提供了较好的外部和内部环境。2002年中国Linux操作系统市场,桌面端和服务器端均增长迅速,桌面端仍以OEM为主,平均价格较低,Linux在服务器端的产品优势逐渐显现。

职业挨踢的MaxMin 1914

Qwen 三代进化全景对比:从 Qwen2.5 到 Qwen3 再到 Qwen3.5

本文对比了阿里巴巴通义千问三代大模型(Qwen2.5、Qwen3、Qwen3.5)的技术演进。18个月内,模型在架构、训练数据和能力上实现显著突破:从纯稠密结构(Qwen2.5)发展为混合注意力架构(Qwen3.5),支持语言从29种扩展至201种,并实现原生多模态融合。关键进展包括引入MoE架构、Gated DeltaNet混合注意力机制(计算效率提升10倍)、以及从独立模态到早期视觉语言联合训练的转变。模型阵容从7个通用尺寸发展为8+个混合架构,最大参数量达397B,上下文窗口扩展至256K(托管版1M

m0_47999117的博客 1万+

linux APM简析

作者:tommy.hong 转载请注明出处Email:hongjiujing@126.com BLOG:http://blog.csdn.net/hongjiujing主页:http://blog.sina.com.cn/jiujinhong  linux对电源管理的支持内核模块针对APM和ACPI两种不同的标准,linux内核提供了两个不同的模块来实现电源管理

3011

NOTE: When using the `ipython kernel` entry point, Ctrl-C will not work.解决方案

本文主要介绍了NOTE: When using the `ipython kernel` entry point, Ctrl-C will not work.解决方案,希望能对使用jupyter notebook的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 11万+

《Python入门到精通》函数详解

函数就是一段「封装」起来的「代码」,目的是提高代码的「模块性」和「复用性」。 2、函数的参数 2.1、变量的就近原则 2.2、传递参数 2.3、形参和实参 2.4、位置参数 2.5、缺省参数 2.6、可变类型和不可变类型 2.7、关键字参数 3、匿名函数 4、函数的返回值

wangyuxiang946的博客 1万+

Linux和RTOS简析

硬件多样性导致操作系统无法直接控制所有设备,驱动屏蔽硬件差异,提供统一接口。: 互斥锁用于保护共享资源(二值信号量),信号量可用于资源计数或同步。: 1. 按固定顺序加锁;3. 静态分析代码。: 就绪态任务只缺CPU,阻塞态任务缺事件(如信号量、延时)。: 使用优先级继承协议(如互斥锁自动提升持有者优先级)。: 如何实现任务优先级反转避免?: 用户空间如何访问驱动?: 就绪态和阻塞态的区别?: 互斥锁和信号量的区别?: 为什么需要设备驱动?:定义文件操作接口(如。: 通过设备文件(如。

niuTyler的博客 1588

chembl_webresource_client 包数据接口下载chembl数据库;ZINC数据库下载、simles获取

点击进去https://zinc.docking.org/subclasses/kinase/predictions/,然后下载sdf模式,这里可以转化simles格式,如果下载csv里面没有包含simles。参考:https://github.com/chembl/chembl_webresource_client/blob/master/demo_wrc.ipynb。参考:https://zinc.docking.org/这是网页搜索查看,16条数据。这个数据这下载特别慢。

weixin_42357472的博客 3053

linux内核简析

  1、linux内核主要由进程调度(SCHED),内存管理(MM),虚拟文件系统(VFS),网络接口(NET)和进程间通信(IPC)构成。进程调度控制系统中多个进程对CPU的访问,使得多个进程在CPU中微观串行,宏观并行。内存管理主要控制多个进程安全地共享主内存区域,当CPU提供MMU单元的时候,linux内存

醉月 1904

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Linux RTC简析及使用

背景 对Linux时间系统感兴趣不是一天两天了,今天这篇着重讲一下Linux时间系统中相对简单跟独立的部分——RTC。 简述 RTC全称为Real Time Clock,是一个专门用来记录时间的硬件设备,一般可以集成在soc内部,或者选择外挂,通过i2c与其通信。 那为什么会需要RTC,因为Linux的系统时间(也就是我们常说的wall time)只能在系统运行时使用,系统关机时间就丢了,而RTC可以在系统关闭后,依靠外部电池或其他supply继续工作,这才将时间保存下来。 一般在Linux系统启

spongebob1912的博客 6231

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

关于Linux cached内存简析

今天通过top  测试MBS系统,AP的weblogic 只是设置了1.5G内存,但是经过3次稳定性测试,内存的利用率达到99%。   nmon的监控揭发发现存在5.6G的cached内存,下面介绍一下:   Linux与Windows不同,会存在缓存内存,通常叫做Cache Memory。有些时候你会发现没有什么程序在运行,但是使用top或free命令看到可用内存会

圈圈的叉叉 1万+

Linux下的fuser用法简析

fuser 可以显⽰出当前哪个程序在使⽤磁盘上的某个⽂件、挂载点、甚⾄⽹络端⼜,并给 出程序进程的详细信息.

u014516208的博客 775

linux设备树简析

1.什么是设备树 设备树(Device Tree),将这个词分开就是“设备”和“树”,描述设备树的文件叫做 DTS(Device Tree Source),这个 DTS 文件采用树形结构描述板级设备,也就是开发板上的设备信息,比如CPU 数量、 内存基地址、 IIC 接口上接了哪些设备、 SPI 接口上接了哪些设备等等。 2. DTS、 DTB 和 DTC DTS 是设备树源码文件, DTB 是将DTS 编译以后得到的二进制文件。将.c 文件编译为.o 需要用到 gcc 编译器,那么将.dts 编译为.dt

sunxiangran的博客 570

Linux KASAN 简析

Linux,KASAN

JiMoKuangXiangQu的专栏 725

linux 中 phy 驱动框架简析

描述文档在哪里? Documentation/net/phy.txt phy 的驱动代码 drivers/net/phy/* 设计 phy 驱动框架的目的 大部分网络设备由向 MAC 层提供接口的多个寄存器的集合组成,MAC 层通过 PHY 与物理链路连接。 phy自身要解决与对端网络链接时链路参数协商的功能,并且提供一个寄存器接口让驱动来确定当前选择的配置,同时驱动也能够配置那些 phy 运行的设置。 phy与网络设备有明确的区别,并符合寄存器的标准布局。常见的网卡设备设计中会在网卡驱动中集成 phy 的

龙瑜的博客 1万+

Linux设备树简析

linux, 设备树

JiMoKuangXiangQu的专栏 4074

Linux:cgroup 简析

Linux,cgroup

JiMoKuangXiangQu的专栏 1189

【Linux目录结构简析】

Linux 的目录结构类似于一棵倒立的树,,所有其他目录都从根目录衍生而来。例如,在/bin 目录中,我们可以找到诸如 ls 命令的可执行文件;在/etc 目录中,可能存在如这样的用户信息配置文件。在实际操作中,通过命令行工具如ls -l /bin可以查看 /bin 目录下的文件详细信息,通过可以查看用户配置信息。这些目录的组织和功能构成了 Linux 系统的目录结构,有助于系统的高效管理和运行。

weixin_45498884的博客 1512

Linux时钟简析

http://blog.chinaunix.net/uid-14214482-id-2150038.html 时钟的作用 尽管与CPU指令执行没有什么直接关系,时钟对于操作系统来说还是有着很重要的意义: 1、记录系统时间。很多应用程序需要知道日期和时间、由日期和时间构成的时间戳也会被打在文件上面、等等; 2、统计功能。如top之类的用户程序可以查看一段时间内的系统负载、以及各个进程占用CPU...

Likes的博客 653

Linux内核引导简析

FutureChen的日记FutureChen的主页广播相册推荐活动发豆邮bootsect.S、setup.S、head.S分析 收藏2010-01-14 13:36:34bootsect.S,系统引导程序,一般不超过512字节。 在PC系统结构中,线性地址0xA0000以上,即640K以上用于图形接口卡和BIOS自身,640K以下为系统的基本内存。如果配置更多的内存,则0x100000,即1MB处开始称为高内存。当BIOS引导一个系统时,总是把引导扇区读入到基本内存地址为0x7c00的地方,然后跳转到此

melong100的专栏 3870
上一篇: JQuery 浅析
下一篇: SpringMVC配置入门
ClassGoldenSea
博客等级 码龄7年 2粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值