1.前端与后端的概念
过程:用户->点击手机app(前端工作)->发起网络请求->连接到互联网->通过各种网络转发,发起网络请求给对应公司机房->找到给用户服务的机器->服务器上跑的Linux操作系统->Linux操作系统上跑的就是各种服务(后端开发)
前端:关注美观,布局的合理性,要实现的功能
后端:关注效率,功能的实现以及稳定性
2.企业有服务器,分别有软件和硬件服务,服务器上需要搭载操作系统
3.Linux环境的搭建方式:
①直接安装在物理机上,即装一个linux系统
②使用虚拟机,将Linux搭建在虚拟机上
③使用云服务器,比如阿里云,腾讯云,华为云等等
4.Linux 个人能力提升
日常使用操作系统,计算机网络,部分组成原理,c语言,系统编程,网络编程,自动化脚本,问题解决与定位,资料查找...,基于上面的诸多基础,生长出很多不同的初步方向:架设服务,数据库管理,运维,后台业务开发,后台游戏开发,数据分析...
5.Linux系统编程主要学习的东西:开源,基础指令,Linux外壳/shell理解,linux权限管理,用户管理,特殊权限,开发工具vim/gcc/gdb/makefi;e/yum,进程概念,多进程编程,进程控制,Minishell编写,基础IO,文件描述符与重定向,进程间通信,Linux信号,线程概念,多线程编程,内核LWP,线程的同步与互斥,生产消费模型,读者写者问题,无锁队列,线程安全,内核数据结构剖析
6.Linux网络编程:网络分层,局域网通信原理,socket编程,tcp/udp服务器编写,自顶向下剖析Linux网络内核协议栈,http/https协议,tcp/udp/mac/arp协议报头剖析,dns,nat,代理服务器,高性能io/多路转接(select/poll/epoll,lt水平触发/et边缘触发),io模型,网络通信,实验...
7.mysql数据库
8.如何学linux
基础理论:操作系统,计算机网络,组成原理
基础操作:基本指令,权限,Linux环境编程(基本编程,系统编程,网络编程)