前端&后端程序员必备的Linux基础知识

一 从认识操作系统开始

1.1 操作系统简介

我通过以下四点介绍什么操作系统:

  • 操作系统(Operation System,简称OS)是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石;
  • 操作系统本质上是运行在计算机上的软件程序 ;
  • 为用户提供一个与系统交互的操作界面 ;
  • 操作系统分内核与外壳(我们可以把外壳理解成围绕着内核的应用程序,而内核就是能操作硬件的程序)。

1.2 操作系统简单分类

  1. Windows: 目前最流行的个人桌面操作系统 ,不做多的介绍,大家都清楚。
  2. Unix: 最早的多用户、多任务操作系统 .按照操作系统的分类,属于分时操作系统。Unix 大多被用在服务器、工作站,现在也有用在个人计算机上。它在创建互联网、计算机网络或客户端/服务器模型方面发挥着非常重要的作用。

  • Linux: Linux是一套免费使用和自由传播的类Unix操作系统.Linux存在着许多不同的Linux版本,但它们都使用了 Linux内核 。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。

 初探Linux

2.1 Linux简介

我们上面已经介绍到了Linux,我们这里只强调三点。

  • 类Unix系统: Linux是一种自由、开放源码的类似Unix的操作系统
  • Linux内核: 严格来说,Linux这个词本身只表示Linux内核
  • Linux之父: 一个编程领域的传奇式人物。他是Linux内核的最早作者,随后发起了这个开源项目,担任Linux内核的首要架构师与项目协调者,是当今世界最著名的电脑程序员、黑客之一。他还发起了Git这个开源项目,并为主要的开发者。


2.2 Linux诞生简介

  • 1991年,芬兰的业余计算机爱好者Linus Torvalds编写了一款类似Minix的系统(基于微内核架构的类Unix操作系统)被ftp管理员命名为Linux 加入到自由软件基金的GNU计划中;
  • Linux以一只可爱的企鹅作为标志,象征着敢作敢为、热爱生活。

2.3 Linux的分类

Linux根据原生程度,分为两种:

  1. 内核版本: Linux不是一个操作系统,严格来讲,Linux只是一个操作系统中的内核。内核是什么?内核建立了计算机软件与硬件之间通讯的平台,内核提供系统服务,比如文件管理、虚拟内存、设备I/O等;
  2. 发行版本: 一些组织或公司在内核版基础上进行二次开发而重新发行的版本。Linux发行版本有很多种(ubuntu和CentOS用的都很多,初学建议选择CentOS),如下图所示:

三 Linux文件系统概览

3.1 Linux文件系统简介

在Linux操作系统中,所有被操作系统管理的资源,例如网络接口卡、磁盘驱动器、打印机、输入输出设备、普通文件或是目录都被看作是一个文件。

也就是说在LINUX系统中有一个重要的概念:一切都是文件。其实这是UNIX哲学的一个体现,而Linux是重写UNIX而来,所以这个概念也就传承了下来。在UNIX系统中,把一切资源都看作是文件,包括硬件设备。UNIX系统把每个硬件都看成是一个文件,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
作为一名Java后端程序员,以下是一些必备的技能: 1. Java语言:作为Java后端开发人员,深入了解Java语言的语法、特性和面向对象编程是必不可少的。 2. Web开发:掌握Java的Web开发框架,如Spring、Spring Boot和Spring MVC,以及相关的技术,如Servlet、JSP和RESTful API等。 3. 数据库和SQL:了解关系型数据库(如MySQL、Oracle)和NoSQL数据库(如MongoDB、Redis)的基本概念和使用方法,熟悉SQL语言以进行数据操作。 4. 前端技术:熟悉基本的前端开发技术,如HTML、CSS和JavaScript,以便与前端开发人员进行协作并理解前后端交互。 5. 网络和协议:了解网络通信原理、HTTP协议以及常见的网络安全问题,能够处理网络请求和响应。 6. 版本控制工具:熟练使用版本控制工具(如Git)来管理代码,并了解分支管理、合并等基本操作。 7. 测试和调试:掌握单元测试和集成测试的方法和工具,能够进行代码调试和性能优化。 8. 设计模式:熟悉常用的设计模式,如工厂模式、单例模式、观察者模式等,以提高代码的可维护性和扩展性。 9. 服务器和部署:了解常见的服务器操作系统(如Linux)、服务器配置和部署,熟悉常用的部署工具(如Docker)和Web服务器(如Tomcat)的使用。 10. 敏捷开发方法:熟悉敏捷开发方法(如Scrum),能够参与团队合作,进行需求分析和任务管理。 除了上述技术技能外,良好的沟通能力、问题解决能力、团队合作精神和持续学习的态度也是Java后端程序员必备的软技能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值