Linux系统编程
文章平均质量分 84
Linux学习笔记
IT阳晨。
仅此一生,努力上进。
展开
-
【Linux系统编程】FTP网盘项目代码加注释
这是一个Linux网络编程的综合项目,实现了客户端向服务端请求查看目录,请求进入指定目录,向服务端上传文件,从服务端获取文件,退出客户端等操作,实现了客户端和服务端的简单交互,这是学习过程中的源码和注释,方便自己查看,一起拿来分享。.........原创 2022-07-14 08:49:06 · 510 阅读 · 0 评论 -
【Linux系统编程】网络编程
网络通信手段的一种,我们在之前学了进程间通信,包括管道、消息队列、共享内存、信号和信号量,这些通信方式有一个共同的特点,就是他们都是在依赖Linux内核在单机上进行进程的通信,而面对多机之间的通信,这些手段就远远不够了。所以我们引入网络,利用网络来实现多机之间的通信。多机通信有好多例子,比如Linux服务器和Adroid、 IOS、C51、x86的Linux之间的通信。 既然谈到网络编程,就一定需要地址,包括IP地址和端口号。IP地址用来标识一台设备,端口号用来标识一台设备上的进程。除了这个,还需要协议来作原创 2022-07-13 21:44:26 · 586 阅读 · 0 评论 -
【Linux系统编程】线程
典型的UNIX/Linux进程可以看成只有一个控制线程:一个进程在同一时刻只做一件事情。有了多个控制线程后,在程序设计时可以把进程设计成在同一时刻做不止一件事,每个线程各自处理独立的任务。进程是程序执行时的一个实例,是担当分配系统资源(CPU时间、内存等)的基本单位。在面向线程设计的系统中,进程本身不是基本运行单位,而是线程的容器。程序本身只是指令、数据及其组织形式的描述,进程才是程序(那些指令和数据)的真正运行实例。线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条原创 2022-07-11 19:53:23 · 129 阅读 · 0 评论 -
【Linux系统编程】进程间通信
进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。 进程间的通信 ,其实在之前我们学习父进程等待子进程退出那个章节有所涉及,即当子进程调用 exitexitexit 退出后会返回一个退出码,父进程调用一个宏来解析这个退出码,从而得到子进程的退出状态,这也是一种意义上的进程间通信,但是这种通信没什么意义,因为在两个进程运行的时候并没有什么实质性的通信,而只有当子进程退出后,它的状态才会反馈给父进程而已。另一种涉及到进程间通信的就是采用 exece原创 2022-07-11 09:58:07 · 130 阅读 · 0 评论 -
【Linux系统编程】进程
关于进程,我们需要掌握五个问题:程序是静态的概念,gcc xxx.c –o pro,磁盘中生成pro文件,叫做程序。进程是程序的一次运行活动,通俗点意思是程序跑起来了,系统中就多了一个进程。a. 使用ps指令查看实际工作中,配合grep来查找程序中是否存在某一个进程b. 使用top指令查看,类似windows任务管理器每个进程都有一个非负整数表示的唯一ID,叫做pid,类似身份证。编程调用getpid函数获取自身的进程标识符,getppid获取父进程的进程标识符。进程A创建了进程B,那么A叫做父进原创 2022-07-08 21:36:47 · 519 阅读 · 0 评论 -
【Linux系统编程】文件
关于文件,想必我们都知道,在windows底下各式各样的文件随处可见,但要深入探讨文件,内容很多,如文件系统原理及访问机制、文件在内核中的管理机制、什么是文件信息节点inode、文件的共享、文件权限和各种用户对其权限等等,但是针对Linux文件编程,我们在这里不做赘述,编程应用为王,比如账单内容保存、游戏进度保存和配置文件等应用,作为编程的我们,只关心如何用代码操作文件实现文件创建,打开,编辑等自动化执行。 windows如何手动修改文件呢?比如写一个word文档,我们无非有这几个步骤:当然,对于L原创 2022-07-08 00:16:48 · 158 阅读 · 0 评论 -
【Linux】VMware连接虚拟网络的三种方式(个人总结)
通过一个物理网卡当成一个交换机,连到外界路由器上,所有真机包括虚拟机一同连到物理网卡交换机上,使得它们都有独立的ip地址:: 通过物理网卡虚拟出一台交换机,每台虚拟机和虚拟交换机连接,IP地址不够用的话可以采用这种方式:: Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-Only模式将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机相互通讯。其网络原创 2022-07-02 15:06:25 · 732 阅读 · 0 评论 -
【Linux】VMware连接虚拟网络的三种方式
由于Linux目前很热门,越来越多的人在学习linux,但是买一台服务放家里来学习,实在是很浪费。那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有vmware workstations和virtual box等。在使用虚拟机软件的时候,很多初学者都会遇到很多问题,而vmware的网络连接问题是大家遇到最多问题之一。在学习交流群里面,几乎每天都会有同学问到这些问题,写这篇详解也是因为群里童鞋网络出故障,然后在帮他解决的过程中,对自己的理解也做一个总结。接下来,我们就一起来探讨一下关于vmw转载 2022-07-02 14:42:21 · 2835 阅读 · 1 评论 -
【Linux】Linux虚拟机和windows间的文件传输方式
VMware Tools安装在Linux系统镜像,需要自行安装,安装完成后效果如下:如果已经成功安装,则可以在虚拟机系统和windows真机系统之间进行文件拖拽,如下:这是一种文件共享的方式。Linux中进入共享文件夹:Linux中查看共享文件夹下的文件:cd :回到工作目录, ... 代表当前路径 这里我们使用filezilla(还有totalcomand和cuteftp),要使用这种方式共享,首先要检查Windows环境下的网络是否和Linux环境下的网络是否相通:...原创 2022-07-02 10:58:36 · 7904 阅读 · 0 评论 -
【Linux】Linux常用命令
设置固定分辨率:3. Ctrl + shift + ‘+’:放大字体4. Ctrl + ‘-’:缩小字体5. Ctrl + ‘l’:清屏6. vi的使用创建编辑一个C代码文件:输入模式:从输入模式进入命令行模式:(默认命令行模式)退出vi保存代码:撤销:按下 ‘u’恢复撤销:Ctrl+ ‘r’1、复制2、剪切/删除2、粘贴7. gcc编译工具的使用编译 .c.c.c 文件:运行可执行文件:不给可执行文件指定名称:8. ls:列出文件listList列出当前路径下的原创 2022-07-02 09:57:55 · 439 阅读 · 0 评论 -
【Linux】Linux简介
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基原创 2022-07-01 17:48:22 · 424 阅读 · 0 评论