Unix/Linux应用
文章平均质量分 69
ComputerInBook
这个作者很懒,什么都没留下…
展开
-
GCC控制输出的选项说明
GCC控制输出的选项说明原创 2023-10-19 18:36:30 · 234 阅读 · 0 评论 -
GCC内联汇编及其在Linux内核中的使用
GCC内联汇编及其在Linux内核中的使用原创 2023-10-19 00:02:57 · 882 阅读 · 0 评论 -
Linux/Unix平台X64函数调用约定
X64调用约定利用寄存器来传递部分函数参数,不规范的函数调用规则逐渐减少。现主要有两种比较通用的函数调用规则。一种是Microsoft X64函数调用约定,参见以下链接:MSVC平台下X64处理器函数调用规则——底层机制_ComputerInBook的博客-CSDN博客目录1. 默认的调用规则2. 内存边界对齐问题3. 解开性(Unwindability)4. 参数传递5. 可变数量参数的传递6. 非原型函数7. 函数返回值8. 调用函数或被调函数存储寄存器9. 函数指针10. 对较旧代码的浮点支持11.原创 2022-05-27 18:07:46 · 1063 阅读 · 0 评论 -
c&c++的int和long各自所占字节数
做如下测试:在windows 64 bit 平台上,使用VC分别编译成32位程序和64位程序,int和long都是占4个字节。在Linux 64 bit 平台上(测试环境为suse linux,gcc编译器),编译成64位程序,int占4字节,long占8个字节。因此,int和long到底各占多少字节,是和平台和编译器实现有关。...原创 2021-12-28 17:03:07 · 2142 阅读 · 0 评论 -
gcc&g++链接动态库或静态库方法
1. 先说明几个参数选项在编译中的作用:>> I(大写的i)指定Include头文件路径;>> L指定link目录>> l(小写的L)指定链接文件,在L指定的位置找。2. 链接库的细节 链接库有两种方法,一是使用参数选项-l,一是不使用-l参数选项。2.1 使用-l参数选项: 以lib-开头命名的库,使用-l省备掉lib和.so或者.a后缀进行链接,且使用环境变量, 例如:libjrtp.so libjrtp.a,连接时使用-ljrtp(或者...原创 2020-09-02 16:26:11 · 4701 阅读 · 0 评论 -
编译isl和cloog库出现:fatal error: gmp.h: No such file or directory
当编译isl时出现错误:fatal error: gmp.h: No such file or directory,这个错误很奇葩。编译isl是需要依懒gmp库的,一般加上前缀--with-gmp即可,但是我这次无论怎么操作,它一直提示这个库,加上--with-gmp-include写上路径也不行。反复试都不成,最后下了一个版本的isl,查看了里面的README文件,才明白有的版本把这个编译参数改成了--with-gmp-prefix。 所以,旧版本的isl编译参数为--with-gmp...原创 2020-07-03 10:43:39 · 5097 阅读 · 1 评论 -
多目录Makefile编写
对于在Linux下编程来说,编写一个好的Makefile是非常重要的,写好了可以给编译带来极大的便利。而网上对于多目录下Makefile的编写讲解的非常少, 有很多都不能达到目的。这里参考了网上一篇Makefile,它是针对C语言的,写的挺不错。我将它改了一下,用于编译C++的Makefile。参考链接在这里https://blog.csdn.net/xiaoluosha...原创 2020-01-26 09:41:49 · 1082 阅读 · 0 评论 -
VMWare下CentOS7无法启动网络
今天在VMWare中启动CentOS使用的是桥接模式,突然不能上网了,看不到IP地址,使用命令systemctl status network.service查看网络,显示网络启动失败。网上有很多解决方案,但是我的情况都不是这些,好好的怎么上不了网了呢?但是改为NAT模式又可以,不过我还是想使用桥接模式,让它有一个独立的IP。我的解决方法如下:1.参照如下链接试了一翻,不能解决问题。...原创 2020-01-20 23:24:19 · 646 阅读 · 0 评论 -
C语言多线程中使用errno全局变量的问题
在C语言中,不管理Unix/Linux还是Windows下,每次系统调用或库函数调用后,如果判断返回值不对,需要调用errno全局变量来判断具体错误。既然errno是全局变量,那么如果在多线程函数中它不会被别的线程充掉吗?显然不是,通过查看相关定义,仅以Unix/Linux为例,可以得出两个结论:1. errno是per-thread的,也就是说errno定义和存储是对于线程而言...原创 2019-12-30 10:28:12 · 1375 阅读 · 0 评论 -
vsftpd安装及遇到的问题
先抛出两个常见的问题,让很多遇到此问题的人头痛不已,看似简单的问题,我也是费劲心思搞了两天才搞定,我再说说我是怎么解决的。即vsftpd 530 Login incorrect和vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()错误。1. 安装环境操作系统: CentOS Linux rel...原创 2019-03-05 00:04:13 · 1234 阅读 · 0 评论 -
Unix/Linux常用命令
>>查看磁盘剩余完间df -h>>显示当前目录的目录和文件的大小du -d1 -h>>查看端口占用情况netstat -tunlp>> 查看某端口tcp连接数netstat -nat | grep -i 80 | wc -l>> 查看进程信息ps -auxps -ef>&...原创 2019-02-17 22:55:29 · 237 阅读 · 0 评论 -
SUSE Linux 命令
1. 执行定时任务crontab -e 编辑定时任务2. 设置开机启动(以tomcat为例)export LC_ALL=zh_CN.UTF-8在/etc/rc.d/boot.local中增加一行tomcat启动脚本:/home/apache-tomecat-7.0.29/bin/starup.shwq! 保存重启。将在runlevel 1时随系统启动。启动信息sus...原创 2018-02-19 13:16:55 · 717 阅读 · 0 评论 -
UNIX网络编程之几种套接字地址结构说明
UNIX几种套按字的结构说明1. IPv4定义的套接字结构,头文件通常称为英特网套接字地址结构,定义如下struct in_addr{ //32 bit地IP4地址,使用网络字节序,故使用时要调用htonl函数或 //类似函数将其转换为网络字节序 in_addr_t s_addr; };struct s原创 2013-12-30 15:39:57 · 783 阅读 · 0 评论 -
UNIX网络编程之简易客户端与服务端
UNIX网络编程TCP客户端步骤(在linux环境下)1. 必需包含的头文件#include#include#include//如果要用到linux下面的socket函数,包含#include//要用到bzero包含#include//要用到输入输入,包含#include2. 注意区分struct sockaddr原创 2013-12-29 13:07:44 · 1238 阅读 · 0 评论 -
UNIX网络编程之字节序及转换
1. 对字节序的理解endian指内存地址的低地址端,即内存地址增长的起始端。little-endian: little指数据的低位字节,指低位字节存放在内存的低地址端,相应的高位字节存放在内存的高地址端;big-endian: big指数据的高位字节,big-endian指高位字节存放在内存的低地址端,相应的低位字节存放在内存的高地址端。网络字节序采用的是big_endian原创 2013-12-30 19:51:15 · 877 阅读 · 0 评论 -
UNIX网络编程之常用函数
1. 字节序转换函数头文件uint16_t htons(uint16_t host16bitvalue);uint32_t htonl(uint32_t host32bitvalue);uint16_t ntohs(uint16_t net16bitvalue);uint32_t ntohl(uint32_t net32bitvalue);2. 地址转换函数头文件2原创 2013-12-30 22:29:19 · 902 阅读 · 0 评论 -
多个目录Makefile编写模板
参考了一个多目录下的Makefile的编写,但是有几处错误没法测试,这里作了改正,写了一模板,用了三个文件file1.h,file2.h,file3.h,test.c作测试。1. 目录结构maketest下的子目录bin:存放生成的文件include:存放头文件(这里放入file1.h,file2.h,file3.h)libs:存放引用的库src:存放源文件(这里放入fil原创 2014-10-28 17:44:23 · 1042 阅读 · 0 评论 -
SuSE Linux防火墙配置
SuSE Linux防火墙配置1. SuSE Linux防火墙配置文件路径:/etc/sysconfig/SuSEfirewall2;2. 启动、关闭、重启防火墙: rcSuSEfirewall2 start rcSuSEfirewall2 stop rcSuSEfirewall2 restart 帮助说明:Usage: /sbin/rcSuSEfi原创 2015-09-08 23:42:48 · 41728 阅读 · 1 评论 -
UNIX系统FreeBSD常用命令
1. 访问Windows共享目录mount_smbfs -I IP //user@host/share /mnt/ 如:用户share,主机名myworkhome,共享目录share mount_smbfs -I 192.168.1.119 //share@myworkhome/share /mnt/ 苹果Mac访问Windows共享目录:mount -t s...原创 2014-06-23 00:16:18 · 839 阅读 · 0 评论 -
Linux上安装部署WildFly 10
来自:http://www.iyunv.com/thread-201523-1-1.html WildFly 曾用名:JBoss Application Server ,红帽公司宣布 JBoss AS 的继任者 WildFly,WildFly 将推动下一代应用服务器技术的发展,这个项目的名字是 JBoss.org 社区成员在 2012 年底投票产生。WildFly 将继续保留 JBos转载 2017-02-03 01:06:04 · 5191 阅读 · 0 评论 -
Vmware下的linux访问Windows中的共享目录
通过以下步骤实现linux对Windows共享目录的访问: 1. 假设Windows(XP系统)下的共享目录为share,IP为192.168.1.101,用户名为Administrator,密码为zhoub 在Vmware->虚拟机->虚拟机设置->选项中启用共享文件夹,并指定用户权限; 2. 在linux中要安装smb相关软件,一般高版本都会默认安装; 3....原创 2011-11-27 13:07:49 · 2410 阅读 · 0 评论