首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux基础——gcc编译、静态与动态(共享

,这些时候,通常的做法是将代码封装成或者框架,生成的静态要和头文件同时发布。...优点: 寻址方便,速度快 在链接时被打包到可执行文件中,直接发布可执行程序即可以使用 缺点: 静态的代码被加载到可执行程序中,因此体积过大 如果静态的函数发生改变,必须重新编译可执行程序 3、静态的制作与使用.../include 第二步:创建静态 ar rcs libMyTest.a *.o 将所有.o文件打包为静态,r将文件插入静态中,c创建静态,不管是否存在,s写入一个目标文件索引到中...共享) 1、动态的命名格式 lib + 的名字 + .so 例:libMyTest.so (MyTest为动态的名字) 2、动态作用分析 共享的代码是在可执行程序运行时才载入内存的.../app (执行失败,找不到链接,没有给动态链接器(ld-linux.so.2)指定好动态 libmytest.so 的路径) 第二种方法: gcc + 源文件 + -I头文件 + libxxx.so

8.4K40

Linux基础软件-selinux&文件&swap

讲的那些东西都算是系统自带的,但是Linux作为一个服务器操作系统,肯定是要安装运行软件来满足我们的业务需要,本章基础软件部分,将从下面几个部分来讲解: Linux基础软件-软件安装 Linux基础软件...-yum(一) Linux基础软件-yum(二) Linux基础软件-ntp Linux基础软件-chrony Linux基础软件-dns(一) Linux基础软件-dns(二) Linux基础软件-nfs...Linux基础软件-lvm Linux基础软件-Selinux&文件&swap(本章节) 本小节主要介绍Linux里面的几个概念,虽然在很多时候,这些并不会在日常使用关注到,但是还是有了解的意义。...在Linux基本目录介绍的时候,也说过有2个目录:/lib /lib64是文件目录,存放系统动态链接和内核模块。...在Linux的哲学里面一切皆文件里面,我们对Linux的操作实际上就是对文件进行增删查改,这些基础功能底层逻辑就是各种函数,相当于系统把这些功能封装在各种函数里面,供应用程序去调用。

5600
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux基础IO】Linux IO编程入门:揭秘动态与静态的秘密

    它们不仅简化了开发流程,提高了开发效率,还通过优化资源使用和减少编译时间等方式,为Linux程序的性能和可维护性保驾护航 然而,对于许多Linux编程初学者和进阶者而言,动静态的选择、配置与使用仍然是一个相对陌生且充满挑战的领域...面对琳琅满目的文件和复杂的链接过程,如何快速上手并有效利用这些资源,成为了摆在他们面前的一道难题 本文旨在成为您学习Linux基础IO中动静态的得力助手。...通过生动的实例和详细的步骤,我们将带您一起探索如何在Linux IO编程中巧妙地运用动静态 让我们一同踏上这段充满挑战与收获的学习之旅,共同探索Linux基础IO中动静态的无限可能! 1....总结 在探索Linux基础IO(输入输出)的旅程中,我们深入了解了动态(Dynamic Libraries)与静态(Static Libraries)这一对重要概念,它们不仅是Linux系统编程的基石...因此,在实际开发中,选择使用静态还是动态,需要根据项目的具体需求、目标平台的特性以及团队的技术栈等多方面因素综合考虑 总之,Linux基础IO中的动静态不仅是技术层面的选择,更是对软件开发理念

    10010

    Linux基础IO【软硬链接与动静态

    本文将带你一起揭晓 ---- ️正文 学习软硬链接前,需要先对文件系统有一个系统性的认识,其中的 inode 至关重要,还未学习的同学可以先看看这篇文章:《Linux基础IO【深入理解文件系统】》 1...接下来学习动静态的相关内容,了解程序运行时是如何调用资源的 2.1、认识 常见的文件:stdio.h、stdlib.h、string.h 等 分为 动态 和 静态 Linux 中,.a 后缀为静态...:通过环境变量解决 添加动态路径至 LD_LIBRARY_PATH 环境变量中 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/Yohifo/linux/Explore...sudo ln -s /home/Yohifo/linux/Explore/file/blog/Test_5_3/mylib/libmycalc.so /lib64/libmycalc.s 注意...总结 以上就是本次关于 Linux基础IO【软硬链接与动静态】的全部内容了,本文主要围绕 软硬链接 与 动静态 展开,详细说明了 软硬链接 的链接方法、区别及实现原理;之后还学习了 动静态 相关内容

    30020

    Linux下Mysql数据基础操作

    一、Mysql数据介绍Mysql数据是一种关系型数据管理系统,具有的优点有体积小、速度快、总体成本低,开源,可移植性(跨平台,在不同系统中使用),可以和开发语结合,属于轻量级数据。...二、数据相关术语介绍1.数据相关名词数据: database 表: table 行: row 列: column 索引: index 视图: view 用户: user 权限: privilege...数据中的列:表中的一个字段,所有表都是由一个或多个列组成的。表中的每一列,称为属性,字段。数据中的索引: 将表中的一个或多个字段中的数据复制一份另存,并且按特定次序排序存储。...关系型数据:关系数据系统建立了关系模型,并用它来处理数据。关系模型在表中将信息与字段关联起来(也就是schemas),存储在数据表的行和列中。数据表可以彼此关联协作存储,也很容易提取数据。...三、Mysql数据的管理1.创建数据用户①创建用户mysql> create user test@localhost identified by '123456';Query OK, 0 rows

    27441

    Linux 基础

    Linux文件系统介绍 在 Linux操作系统中,所有被操作系统管理的资源,例如网络接口卡、磁盘驱动器、打印机、输入输出设备、普通文件或是目录都被看作是一个文件。...也就是说在LINUX系统中有一个重要的概念:一切都是文件。...系统下,进程之间通信可以通过该文件完成 Linux运行级别 运行级别就是操作系统当前正在运行的功能级别。...Linux下的7个运行级别: 0: 系统停机状态,系统默认运行级别不能设置为0,否则不能正常启动,机器关闭。...Linux进程状态 Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的? 不可中断状态:进程处于睡眠状态,但是此刻进程是不可中断的。

    1.5K21

    Linux 基础

    Linux 基础 Linux 启动流程 Linux 启动时会看到很多启动信息。...Linux 文件属性 Linux 是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。 为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录)的权限做了不同的规定。...在 Linux 中,可以使用 ls -l 命令来显示一个文件的属性以及文件所属的用户和组。...Linux 文件属性和属组 对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。 同时,在 Linux 系统中,用户是按组分类的,一个用户属于一个或多个组。...Linux 文件内容查看 Linux 系统中使用以下命令来查看文件的内容: cat : 由第一行开始显示内容 tac : 从最后一行开始显示,可以看出 tac 是 cat 的倒写 nl : 显示的时候,

    54920

    linux基础

    1.目录 /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录。所有的东西都是从这里开始。.../boot:放置linux系统启动时用到的一些文件,如Linux的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub。.../dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱 mount /dev/cdrom /mnt。.../lib、/usr/lib、/usr/local/lib:系统使用的函数的目录,程序在执行过程中,需要调用一些额外的参数时需要函数的协助。.../usr:应用程序存放目录,/usr/bin 存放应用程序,/usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数文件。

    2K50

    Linux基础

    图片 Linux操作系统 不同的人对计算机有不同的操作习惯,不同的使用场景对操作系统有不同的挑战,所以当前就出现了多 种多样的操作系统 Windows 收费闭源操作系统,主要用于日常办公、游戏、娱乐多一些...Linux 免费的,开源的,主要用于服务器领域,性能稳定,安全 Unix 用于封闭的硬件环境,企业的应用依赖于定制化开发 Linux图谱 Linux发展到今天出现了大量不同的分支。...不同的分支都有不同的发展方向,可以扫描下面二维码,查看 Linux发现分支图 Linux名词 Linux系统内核指的是一个由Linus Torvalds负责维护,提供硬件抽象层、硬盘及文件系统控制及多...Linux发行套件系统是我们常说的Linux操作系统,也即是由Linux内核与各种常用软件的集合产品 RedHat认证 redhat是目前全球最大的Linux商业公司,redhat为Linux技术工程师提供了一个考试认证

    75810

    【编程基础linux基础入门--linux为何物?

    接触linux是在大二的时候,那时候迷上了嵌入式linux,把电脑换成了linux系统,学习linux基础知识,学习linux命令,学习shell,泡论坛,就这样慢慢的平时工作学习都可以使用linux系统完成了...到了毕业工作的时候,正式开始android开发,使用的正是ubuntu系统,多亏上学时候的linux基础知识,工作的时候也算得心应手。...想要开发linux,首先要会熟练的使用linux,笔者作为过来人,就来和对linux感兴趣的初学者来聊聊linux。 ? 上文提到过,linux就是根据unix演变过来的。...也许你听说过吧,linux是免费开源的,所有人都可以拿到它的代码。这里的免费只是说linux的内核免费。在linux内核的基础上而产生了众多linux的发行版就不一定免费了。 ?...Linux的发行版说简单点就是将Linux内核与应用软件做一个打包。

    1.7K140

    Linux基础——Linux权限详解

    前言:本篇开始我们要对Linux进行更深入的学习了,让我们来进入新篇章:Linux的权限理解!...理解默认权限以及权限掩码 1. shell命令以及运行原理 Linux操作系统准确来说是:Linux内核+Linux外壳+配套程序 Linux外壳也就是shell Linux严格意义上说的是一个操作系统...首先:命令行解释 因为Linux内核的设计非常复杂,用户无法直接向Linux内核进行沟通,更不能直接读懂内核执行完命令的结果,所以shell外壳充当"媒婆"这一角色,来进行用户和内核沟通上的翻译。...用户 2.1 普通用户和超级用户 一个Linux账号只有一个超级用户:root 创建的其余用户都叫做普通用户 如果想在Linux里切换用户我们可以: 指令:su 用户名 注意:超级用户切换为普通用户不用输密码...总结拓展 在Linux中的权限十分分明,保护也非常到位,除了root外其他用户并不能直接拿走你的文件,也不会修改删除你的文件。

    53410

    Hacker基础Linux篇:基础Linux命令十四

    今天我们继续学习Linux命令 su su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码 su命令使用介绍: 命令格式:su [option] name 命令功能:切换当前用户身份到其他用户身份...hackuser 4 当然,如果你哪天发现这个是你自己创建的用户,你想解封可以这样 usermod -U hackuser sdfd uname uname命令可用于大多数UNIX和类UNIX系统以及Linux...详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称 -m 显示主机的硬件(CPU)名 -n 显示主机在网络节点上的名称或主机名称 -r 显示Linux...操作系统内核版本号 -s 显示Linux内核名称 -v 显示显示操作系统是第几个version版本 -p 显示处理器类型或unknown -i 显示硬件平台类型或unknown -o 显示操作系统名 -

    58840
    领券