精华内容
下载资源
问答
  • LinuxUNIX系统编程手册

    千次下载 热门讨论 2014-04-27 16:32:07
    LinuxUNIX系统编程手册非常适合新手学习的好资料
  • Linux是什么同一套操作系统无法在不同架构的平台上运行。 参考硬件功能函数并修改你的操作系统程序...Linux提供了一个完整的操作系统当中最底层的硬件控制与资源管理的完整架构,这个架构是沿袭UNIX良好的传统而来的,

    Linux是什么

    同一套操作系统无法在不同架构的平台上运行。
    参考硬件功能函数并修改你的操作系统程序代码,那经过改版后的操作系统就能够在另一个硬件平台上运行了。这就是软件移植
    Linux是开源的操作系统,所以它的程序代码可以被修改成适合在各种机器上面运行的。Linux具有可移植性

    Linux提供了一个完整的操作系统当中最底层的硬件控制与资源管理的完整架构,这个架构是沿袭UNIX良好的传统而来的,所以相当稳定而且功能强大。

    Linux之前UNIX的历史

    1969年以前:一个伟大的梦想——Bell MIT 与GE的”Multics”系统

    20世纪60年代初期MIT开发了分时操作系统(Compatible Time-Sharing System CTSS)
    它可以让大型主机通过提供多个终端机以连接进入主机,从而利用主机的资源进行运算工作。此时的终端机只有输入输出功能,本身完全不具有任何运算或软件安装的能力。而且只能提供最多30台终端机。

    1965年前后,由贝尔实验室(Bell)麻省理工学院(MIT)及通用电气公司(GE)共同发起了Multics的项目,Multics项目的目的是想要让大型主机可以同时提供300台以上的终端机连接使用的目标。
    最后Multics艰难完成 但是没有得到很大重视。但是Multics项目培养的人才是相当优秀的。

    1969年:Ken Thompson的小型File Server System

    从Multics退出后,Ken Thompson经过4个星期奋斗,以汇编语言写出了一组内核程序,同时包括一些内核工具程序,以及一个小的文件系统。这就是UNIX的原型。(Unics)
    File Server System有两个重要概念:
    ①所有的程序或系统装置都是文件。
    ②不管构建编辑器还是附属文件,所写的程序只有一个目的就是要有效地完成目标。
    这些概念在后来对于Linux的开发有相当重要的影响。

    1973年:UNIX正式诞生,Ritchie等人以C语言写出第一个正式UNIX内核

    1973年Thompson和Ritchie合作以C语言重新改写与编译Unics的内核,最后发行出UNIX的正式版本。这个改变也是的UNIX很容易被移植到不同的机器上。

    1977年:重要的UNIX分支——BSD诞生

    UNIX是以C语言写成的,理论上是具有可移植性的。只要取得UNIX的源码,并且针对大型主机的特性加以修订原有的源码,就可能将UNIX移植到另一台不同的主机上。所以1973年之后UNIX便和加州大学伯克利分校合作开发。
    加大Bill Joy在移植UNIX的过程中加入了很多工具软件与编译程序,最终将它命名为Berkeley Software Distribution(BSD)。BSD是UNIX很重要的一个分支。
    Bill Joy也是Sun这家公司的创办者。Sun公司即是以BSD开发的内核进行自己的商业UNIX版本的开发的。(后来可以安装在x86硬件架构上面FreeBSD即是BSD改版而来!)

    1979年:重要的System V架构与版权声明

    由于UNIX的高度可移植性与强大的性能,加上当时并没有版权的纠纷,所以让很多商业公司开始了UNIX操作系统的开发。
    操作系统的内核必须要跟硬件配合,以提供及控制硬件的资源进行良好的工作。而在早期每一家生产计算机硬件的公司还没有协议的概念,所以每一台计算机公司出产的硬件自然就不相同了。另外由于没有厂商针对个人计算机设计UNIX系统(早期个人计算机架构下的CPU是没有能力达到多任务作业的),所以早先的UNIX只能和服务器或者是大型工作站划上等号

    1979年,AT&T推出了System V第七版UNIX,支持了x86架构的个人计算机系统。
    AT&T出于商业考虑,想将UNIX的版权收回去。因此在第七版System V中特别提到了“不可对学生提供源码”

    目前被称为纯种UNIX的指的就是System V和BSD这两套。

    1984年之一:x86架构的Minix操作系统诞生

    大学教授Andrew Tanenbaum动手写了Minix这个UNIXLike的内核程序。为了避免版权问题,写的过程中他从不看System V的源码。
    Minix也开了源码放在磁盘上出售的先河。
    因为Minix被认为用在教育上面,所以教授对Minix是点到为止。

    1984年之二:GNU项目与FSF基金会成立

    Richard Mathew Stallman从小在一个注重分享的黑客圈长大。开始使用UNIX开发之后,为了可以让软件可以在不同的平台上运行,Stallman将他开发的软件均编写成可以移植的类型,也就是他都会将程序的源码公布出来。

    1984年,Stallman开始GNU项目。这个项目的目的是创建一个自由 开放的UNIX操作系统(Free UNIX)。
    后来Stallman现在UNIX上写小程序,逐渐扩大了GNU项目的知名度。但Stallman真正的创建操作系统的初衷直到Linux的出现才实现。
    后来GNU项目开始编写C语言的编译程序,那就是大名鼎鼎的GNU C Compiler (GCC) (著名的GNU项目还有程序编辑器Emacs等)
    接着Emacs赚的一笔钱,Stallman成立了自由软件基金会(Free Software Foundation, FSF),邀请更多工程师和志愿者来编写软件。

    GNU的通用公共许可证

    为了避免GNU项目中的自由软件被其他人所利用而成为专利软件,所以草拟了有名的通用公共许可证(General Public License GPL) 并且称呼它为CopyLeft(与专利软件的Copyright相对)
    GNU所开发的几个重要软件:Emacs GNU C(GCC) GNU C Library(GLIBC) Bash Shell

    1988年:图形接口XFree86项目

    1984年,由MIT与其他第三方首次发表了X Window System 并且在1988年成立了非盈利性质的XFree86(X Window System + Free + x86)。
    XFree86的GUI界面在Linux的内核1.0版于1994年放出时集成于Linux操作系统当中。

    1991年:芬兰大学生Linus Torvalds的一则消息

    1991年Torvalds在大学BBS上开始了Linux不平凡的旅程。

    关于GNU项目

    自由软件的活动

    源码连同软件同时放出的举动就是自由软件运动。

    自由软件的版权GNU GPL

    为了避免自己的开发出来的Open Source的自由软件被拿去做成商业软件,预示Stallman同时将GNU与FSF开发出来的软件都挂上GPL的版权声明。FSF的核心观念是:版权制度是促进社会进步的手段,版权本身不是自然权力。

    自由(Free)的真谛

    Free:重点不是指免费,而是用户可以自由执行 复制 再发行 学习 修改和强化自由软件。

    自由软件与商业行为

    自由软件可以通过服务的形式出售。

    展开全文
  • 专业的LinuxUnix运维人员或开发人员,无一不对其提供的Shell的功能折服。Shell的功能不必多说,强大到可以通过开发的Shell脚本自动化实现任何你想让服务器做的操作。很多朋友都想学习Shell编程开发,也想学习自己...

    专业的Linux或Unix运维人员或开发人员,无一不对其提供的Shell的功能折服。Shell的功能不必多说,强大到可以通过开发的Shell脚本自动化实现任何你想让服务器做的操作。很多朋友都想学习Shell编程开发,也想学习自己写一些Shell脚本自动化自己的日常服务器管理工作,但苦于没有一本好书介绍Shell编程方面的知识。

    博主整理了几本很不错的Linux Shell基础到高级的Shell脚本开发相关的书籍,一定会对你有所帮助。

    下面的是几本博主珍藏的Shell脚本方面的电子书,有需要的直接点击电子书名称下载即可。


    Linux Shell脚本攻略(第2版).pdf

    Linux命令行和shell脚本编程宝典.pdf

    Unix.Shell编程(第三版).pdf

    精通 LINUX_UNIX Shell 程序设计.pdf


    YunFile网盘下载文件总是失败,可以参考文档 YunFile网盘文件下载示例文件

    以上所有书籍均收集自网络,本着互联网分享精神拿出来分享。如果你是书籍作者,本文的分享侵犯了你的权益,请联系邮箱jhxt1989@126.com,本人将予以删除。


    展开全文
  • Linux Unix域套接字

    千次阅读 2016-11-03 21:35:28
    套接字API多用于网络通信,用于不同主机间进行通信,虽然也可以用于同一主机进程间通信,但是没有Unix域套接字效率高。Unix域套接字用于同一主机进程间通信(即单个主机上客户/服务器通信),提供两种套接字类型字节...

    套接字API多用于网络通信,用于不同主机间进行通信,虽然也可以用于同一主机进程间通信,但是没有Unix域套接字效率高。Unix域套接字用于同一主机进程间通信(即单个主机上客户/服务器通信),提供两种套接字类型字节流套接字(类似TCP)和数据报套接字(类似UDP)。

    1、Unix域套接字结构

    #include <sys/un.h>
    struct sockaddr_un{
        sa_family_t sun_family;   /*AF_LOCAL*/
        char sun_path[108];       /*null terminated pathname*/
    };
    /* 说明:
     * sun_family 为套接字家族,为AF_LOCAL,也可以是AF_UNIX;
     * sun_path[108]为保存路径的数组,大小也可能是104,由系统决定,路径由空字符结束;
     * 空字符(sun_path[0]=0)表示未指定地址,等价于IPv4中的INADDR_ANY;
     * 用于获取结构长度的宏:SUN_LEN(&str),参数为该结构的一个指针,返回的是实际的数据长度,不包含空字节;
     */
    

    Unix域套接字应用类似网络套接字,都是通过socket函数来获取一个套接字描述符。简单应用如下:

    #include <sys/un.h>
    #include <sys/socket.h>
    #include <unistd.h>
    #include <stdio.h>
    #include <stdlib.h>
    
    int main(int argc, char **argv)
    {
        int sockfd;
        socklen_t len;
        struct sockaddr_un addr1, addr2;
        char path[] = "/home/centos/tsdir";
    
        unlink(path);  //delete file
        sockfd = socket(AF_LOCAL, SOCK_STREAM, 0);
        bzero(&addr1, sizeof(addr1));
        addr1.sun_family = AF_LOCAL;
        strncpy(addr1.sun_path, path, sizeof(addr1.sun_path)-1);
        //memcpy(addr1.sun_path, path, sizeof(path));
        bind(sockfd, (struct sockaddr*) &addr1, SUN_LEN(&addr1));
    
        len = sizeof(addr2);
        getsockname(sockfd, (struct sockaddr*) &addr2, &len);
        printf("bound name = %s, returned len = %d\n", addr2.sun_path, len);
        exit(0);
    }

    代码中创建一个Unix域套接字,由bind函数绑定到由socket函数获取的描述符上,套接字的地址为本地的一个路径名,利用getsockname得到并输出地址。
    unlink用于删除路径名,以防止它已存在;
    strncpy用于复制路径到相应位置,注释的memcpy功能相同;
    路径名必须是绝对路径;
    对于UDP来说,客户端套接字必须绑定一个路径名,以使UDP服务器有发送应答的目的地;

    2、socketpair 函数

    /* 功能:创建两个连接起来的套接字,仅适用于Unix域套接字;
     * 返回值:成功则为0,出错则为-1;
     * 定义:
     */
    #include <sys/socket.h>
    int socketpair(int family, int type, int protocol, int sockfd[2]);
    /* 说明:
     * family 参数必须为AF_LOCAL;
     * protocol 必须为0;
     * type 可以是SOCK_STREAM,SOCK_DGRAM;
     * sockfd 存储新建的两个描述符;
     * 两个描述符既可读又可写;
     */

    UNIX域套接字编程和socketpair 函数

    展开全文
  • LINUX UNIX 删除目录的命令

    万次阅读 2010-06-10 10:40:00
    unix 或者linux删除目录的时候, 使用rmdir,如果在目录下面有一些其他文件,会很难办。 因此可以使用 rm-rf 来解决这个问题。 -r 向下递归,不管有多少级目录,删除到最深。 -f 强行删除,...

    在unix 或者linux删除目录的时候, 使用rmdir,如果在目录下面有一些其他文件,会很难办。

    因此可以使用 rm-rf 来解决这个问题。

    -r 向下递归,不管有多少级目录,删除到最深。

    -f 强行删除,不做任何提示。

    展开全文
  • 微软的操作系统在相应的软件平台之下,发挥自己处理器和软件系统的好处,但是一但到Linux Unix平台之下我们的系统性能不会发生质的变化关键我们是自由软件在相应的商业操作系统中我们更加优秀,还有
  • 查看linux unix 当前shell是哪种

    千次阅读 2010-07-14 13:03:00
    echo $SHELL
  • 可用clamAV扫描, 显示是Linux Unix.Trojan.Elknot木马病毒(Linux.BackDoor.Gates.5), 参考: http://bbs.appstar.com.cn/thread-10205-1-1.html http://news.drweb.cn/show/?i=230&lng=cn&c=5 ...
  • Unix/Linux fork前传

    万次阅读 多人点赞 2019-09-09 08:15:00
    本文是《Linux fork那些隐藏的开销》的前传。fork的由来fork的思想在UNIX出现几年前就出现了,时间大概是1963年,这比UNIX在PDP-7上的第一个版本...
  • Linux/Unix好书推荐

    千次阅读 2016-09-26 16:34:22
    小编整理了下Linux/Unix的书单,共16本,有Linux综合性入门和进阶4本,Linux Shell 2本,Linux内核相关的3本,Kail Linux 2本,还有1本Linux之父自传,最后推荐了1本Unix内核和3本Unix经典书。需要用到Linux/Unix的...
  • LinuxUnix的关系

    千次阅读 2017-02-26 10:03:53
    LinuxUnix的区别 某些PC机的UnixLinux在实现方面相类似。几乎所有的商业Unix版本都基本支持同样的软件、程序设计环境和网络特性。然而,LinuxUnix的商业版本依然存在许多差别。Linux支持的硬件范围和商业Unix...
  • linuxunix区别

    千次阅读 2021-01-29 10:57:27
    UNIXLinux 之间的关系是一个很有意思的话题。在目前主流的服务器端操作系统中,UNIX 诞生于 20 世纪 60 年代末,Windows 诞生于 20 世纪 80 年代中期,Linux 诞生于 20 世纪 90 年代初,可以说 UNIX 是操作系统...
  • LinuxUnixLinux的历史及关系

    千次阅读 2018-10-25 20:41:38
    UnixLinux的关系悉悉嗦嗦Unix的历史Linux简介Mac OS 悉悉嗦嗦 对于接触计算机不久的同学来说,可能经常听到类似:UnixLinux,类Unix,Mac OS X,BSD,FreeBSD,“LinuxUnix一样啦”,“差不多”等等名次和论断...
  • LINUXUNIX SHELL编程指南

    千次下载 热门讨论 2011-11-13 22:28:34
    LINUXUNIX SHELL编程指南
  • LinuxUnix的区别

    千次阅读 2019-09-13 09:11:03
    我只要搜一些关于这方面的东西,结果全都是关于Linux的,搞得好像Linux就是Unix似的。这让我不得开心颜。 Unix的搜索结果几乎全部都是一些宏观方面的什么哲学,思想,影响之类的,貌似经理很喜欢的那种写在ppt上的...
  • LinuxUnix的区别

    千次阅读 2018-08-22 11:29:40
    Linux: 1、开源 2、系统:Redhat、fedora、mandriva/novellsuse/debian/slackware/gentoo/ubantu/cenos Unix: 1、商业 2、系统:IBM AIX、HP UNIX、SUN solias;Unix有硬件要求 3、适用:大型要求:如电信、...
  • linuxunix的对比

    2014-11-01 23:10:18
    关于linuxunix操作系统的一些不同的地方
  • LinuxUnix之间的关系以及Linux的发展

    千次阅读 2017-02-28 22:28:30
    从系统来源的角度看,LinuxUnix的开源实现,思想也来源于Unix,但并没有包括Unix的源码,而且是免费的自由软件,源代码是公开的。 Linux所需的硬件要求也低于Unix,难度也小于UnixLinux可以实现Unix的全部...
  • Linux 从远程Linux/Unix上复制文件夹

    千次阅读 2015-03-31 17:27:44
    Linux 从远程Linux/Unix上复制文件夹
  • linuxunix区别

    千次阅读 2021-02-26 16:17:05
    UNIX是历史最悠久的通用操作系统。1969年,美国贝尔实验室的K.Thompson和D.M.Ritchie在规模较小及较简单的分时操作系统MULTICS的基础上开发出UNIX, 当时是在DEC的PDP—7小型计算机上实现的,1970年正式投入运行。...
  • LINUXUNIX SHELL编程指南》.pdf

    热门讨论 2014-04-19 19:21:57
    LINUXUNIX SHELL编程指南,介绍linuxunix 下的基本命令及部分基础shell编程与高级shell编程技巧。
  • 企业级的项目都部署到linux/unix服务器运行 创始人Linus林纳斯。 吉祥物:企鹅:Tux Linux主要发行版 UnixLinux的关系: Unix是收费的,所以Linus和他的伙伴们发明出了Linux这个开源的系统。 windows与...
  • Linux入门培训_Linux基础培训教程_Linux系统入门学习视频课程,Unix基础培训教程(如aix,hp-ux),针对linux系统初级者开设的课程,是linux入门简单的视频教程.
  • 00. 目录 文章目录00. 目录01. 请参考Unix传奇02.03. 本博客后面会更新 01. 请参考Unix传奇 链接: https://coolshell.cn/articles/2322.html 02. 03.
  • 有很多初学Linux的人比较关心Linux和windows的区别,这里还有一点就是Linux Unix的区别,弄清楚一些区别有助于我们对操作系统的了解.这里叙述Linux Unix的区别.
  • Understanding Unix/Linux Programming

    热门讨论 2012-02-27 09:41:50
    这是《Understanding Unix/Linux Programming》书后光盘资源,这本书非常经典,是学习Unix/Linux的好教材,课后资源含有大量的练习。
  • LinuxUnix区别学习总结

    千次阅读 2016-07-30 09:45:52
    UNIXLINUX的区别 http://blog.csdn.net/preciousboy/article/details/5867382 UNIX是历史最悠久的通用操作系统。1969年,美国贝尔实验室的K.Thompson和D.M.Ritchie在规模较小及 较简单的分时操作系统...
  • Linux/Unix配置环境变量

    千次阅读 2014-12-28 20:12:02
    Linux/Unix配置环境变量 Linux/Unix系统环境变量配置文件:  /etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件 ,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。  /etc/...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 560,895
精华内容 224,358
关键字:

linuxunix

linux 订阅