一周学习总结笔记.docx
《一周学习总结笔记.docx》由会员分享,可在线阅读,更多相关《一周学习总结笔记.docx(35页珍藏版)》请在冰豆网上搜索。
一周学习总结笔记
一周学习总结笔记
周学习笔记
周一
上午主要将虚拟机进行了搭建,安装必须的软件,配置软件的运行环境。
下午主要学习C++的基本知识指针以及类的基本用法,开始着手创建自己的工具函数库,完成快排算法程序函数的填充。
由于时间长没有使用C++语言,所以开始运用感觉有一些生疏,所以还是需要补充一下相关的基础知识。
完成任务
本地计算机以及虚拟机运行环境的配置
学习C++基本知识,开始着手创建自己的工具函数库附1快速排序算法
1)设置两个变量I、J,排序开始的时候I=0,J=N-1;
2)以第一个数组元素作为关键数据,赋值给key,即key=A[0];3)从J开始向前搜索,即由后开始向前搜索(J=J-1即J--),找到第一个小于key的值A[j],A[j]与A[i]交换;
4)从I开始向后搜索,即由前开始向后搜索(I=I+1即I++),找到第一个大于key的A[i],A[i]与A[j]交换;
5)重复第3、4、5步,直到I=J;(3,4步是在程序中没找到时候j=j-1,i=i+1,直至找到为止。
找到并交换的时候i,j指针位置不变。
另外当i=j这过程一定正好是i+或j-完成的最后令循环结束。
)
周二
上午继续学习C++指针的相关应用,因为在mboot的相关开发过程中可
能会较多的考虑内存利用率的问题,所以指针的学习至关重要;了解vi编辑器的使用方法,在虚拟机的运行环境下,应该是比较常使用vi编辑器来进行相关的代码修改工作,所以应该有必要熟练的使用vi编辑器。
下午主要是根据培训计划中的内容了解MBoot,看《MBootUserGuide》的文档内容,了解基本的mboot编译的相关方式方法,总体感觉有点儿麻烦,不过问了一些师兄,说这部分内容比较简单,因为都是开发好的,改动的东西比较少,从而心里还有点儿底了。
完成任务
深入学习C++有关指针的内容了解使用vi编辑器了解MBoot的基本内容
周三
上午主要学习MBoot的发布以及编译运行调试,由于第一次接触这方面的相关东西,而且内容和硬件关系比较密切,所以接受起来有一定得吃力,不过相信真正了解的时候这些问题就不会再存在了,可能开始会累一些,但是学习新知识总归是好的。
下午继续学习这方面的内容,中间实在看的头疼转过来看了看C++的类的友元以及操作符的重载,还是没底啊,越看发现不懂的越多,文档里面介绍的东一耙子西一扫帚的,根本不知所谓,明天还得找一些文档恶补啊。
完成任务
学习MBoot发布、编译以及相关运行流程恶补各种不知道的硬件知识了解C++的友元和操作符重载
周四
今天下午主要学习了开机音乐+开机LOGO的启动流程以及其新的设计方案,这一部分内容相对较少也比较好理解,但是要去修改编写还存在很多的不明白的问题。
上午的时间主要用来构思我的一个新的想法,以及分析这个想法的可行性,相信下周可以整理出项目方案,存放留待有足够能力时去实现它。
完成任务
1.开机音乐+开机LOGO的启动流程
周五
细细的体会《introductiontoMBoot》这本电子书,虽然已经读了四编,但是每一遍读都会有新的认识,而且多读一次就会发现自己不懂的就多一些。
例如今天读到“initializeH/Wsetting”这一段时就想了,这个H/W是个什么东西呢,上网查也没有查到结果。
还有就是下图5-1中
0x00000000sboot0x00010000PM0x000201*00x000201*0Chunkheaderu-boot0x007E0000Environmentvariable/BBT0x00800000
图5-1SPIFlashLayout
当读到这里时,我又不知道这个PM作何讲了。
问过师父之后才知道,这是个类似于系统的东西,可以接受键盘鼠标等的命令方便下面的UBoot的加载控制。
图5-2文档问题截图
此部分很少用到,且很少修改,所以不必理会,暂且放入黑匣子了解到开机图片以及音乐文件条件
a最大分辨率支持如下:
Baseline:
1600*1200;b.大小不能超过128k;
c音乐大小不能超过64K;d音乐文件必须是mp3格式;
扩展阅读韩顺平.一周学会linux学习小结.v0
linux视频教程第0讲.开山篇
为什么学习linux
linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中型,大型甚至是巨型项目都在使用linux
linux内核redhat、红旗linux、ubuntu、suse、fedora,它们的内核都是一样的(Notelinux其实是一个统称,就比如面条是一个统称,可以有哨子面、阳春面、打卤面等)
linuxfor工作
-
linux系统管理员--
linux系统的维护、配置等
linux程序员---
需c/c++、java,php、jsp…linux软件工程师(PC)
linux嵌入式开发(单片机、芯片)
如何学习linux
第一阶段linux平台上的开发,包括vi,gcc,gdb,make,jdk,tomcat,mysql..和linux基本操作
第二阶段加厚c语言功底《c专家编程》或是java语言第三阶段学习unix环境高级编程《unix环境高级编程》第四阶段linux应用系统开发/linux嵌入式开发
内容讲解
基础部分---
linux基础知识linux常用命令80个linux分区/vi/权限…
实用部分-
Samba安装与配置-----
linux网络环境配置crontab使用
jdk/apache/mysql/ssh/rpm安装与配置linux下java网络编程shell初步介绍
推荐书籍
---
《鸟哥的Linux的私房菜基础学习篇》鸟哥、许伟、林彩娥等编著《Linux编程从入门到精通》宫虎波编著《Linux内核完全剖析》赵炯编著
linux视频教程第1讲.基础介绍
linux的初步介绍
linux的特点----
免费的/开源支持多线程/多用户安全性好
对内存和文件管理优越
linux的缺点-
操作相对困难
吉祥物小企鹅(想起小时侯被企鹅咬了一口),芬生学生创建,微软反LINUX广告(四个变形动物)
linux的历史-
1960时期左右,MIT,即麻省理工学院有一台电脑,使用分时操作系统,只能同时允许30个人通过终端登录-
1965年,MIT、GE、Bell实验室,决定将30300个人分时系统,multis计划,即火星计划-
1969年,火星计划失败。
但Bell的KenThompson开发了一个fileserversystem文件系统,在Bell实验室很受欢迎-
在DennisRitchie的加入下,1973年,unix诞生,开源,源码内核共享------
IBMAIXSunSolarisHPHPunix伯克利分校BSD
minix系统出现
LinusTorvalds,芬兰读书,拥有PC386,1991年计划把minix移植到pc上,1994发布linux0版linuxisnotunix,完全没有桌面---
redhat红帽子s.u.s.e
红旗linux(中国)
linux的第一次接触
关机命令
shutdown-hnow立即进行关机(管理员root才可以)shutdown-rnow现在重新启动计算机reboot现在重新启动计算机
进入桌面startx
用户登录
登录时尽量少用root账户登录,因为它是系统管理员,最大的权限,难免操作失误。
可以利用普通用户登录,登录后再用“su-”命令来切换成系统管理员身份
用户注销
在提示符下输入logout即可,快捷键ctrl+D
linux视频教程第2讲.vi编辑器的使用
什么是vi编辑器
vi编辑器是linux下最有名的编辑器,也是我们学习linux必须掌握的工具,在linux下也可使用vi进行程序的开发,如java程序,c程序。
psVI编辑器由BillJoy1976年在bsdunix开发的(世界第一骇客,成为了自由软件协会)
如何使用vi进行开发?
在linux下使用vi开发一个简单的java程序Hello.java,并且在linux下运行成功-
开发步骤-
java程序-------
viHello.java
输入i,进入到插入模式输入Esc键,进入命令模式
输入冒号:
[wq表示保存退出,q!
表示退出不保存]编译javacHello.java运行javaHello
c程序-
gccoHelloHello.cpp[参数o表示可自定义生成的out文件名,否则默认为a.out,重复写会覆盖以前的值]-
视频教程第3讲.用户管理.目录结构
概述
简单介绍
linux的文件系统是采用层级式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录
深刻理解linux文件目录是非常重要的-
/---------
常用命令介绍
pwd,显示当前在哪个路径下linux的用户管理
useradd用户名,添加用户
a)【案例】useraddxiaomingpasswd用户名,为新用户设密码
a)【案例】passwdxiaoming,修改小明的密码userdel用户名,删除用户
a)【案例】userdelxiaoming,删除用户但保存用户主目录b)【案例】userdelrxiaoming,删除用户以及用户主目录logout,当前用户退出whoami,当前用户是谁
提示“#”表示root用户,“$”表示普通用户。
root,存放root用户的相关文件home,存放普通用户的相关文件bin,存放常用命令的目录,如vi,susbin,要具有一定权限才可以使用命令mnt,默认挂载光驱和软驱的目录etc,存放配置的相关文件
var,存放经常变化的文件,如网络连接的sock文件boot,存放引导系统启动的相关文件
usr,安装一个软件的默认目录,相当于windows下的programfileslinux视频教程第4讲.常用命令
linux的常用命令
--------
init[0123456],指定系统运行级别,类似windows的正常运行模式或安全模式0关机1单用户
2多用户状态没有网络服务3多用户状态有网络服务4系统未使用保留给用户5图形界面6系统重启
常用运行级别是3和5,要修改默认的运行级别可改文件/etc/inittab的id:
5:
initdefault:
这一行中的数字
切换用户输入su切换用户或者logout
FAQ不小心设置了6,导致系统启动-重启-启动循环,怎么办?
在进入grub引导界面时,在数秒的时候,请输入e然后选中第二行,输入e
在出现的界面里,输入1【1表示单用户级别】,1的前面需要加一个空格,单用户
模式既可以修改模式,又可以修改密码,Enter返回后,按b
注意用运行级别1可以绕过ROOT密码,不需要密码就可以用,用passwd就OK
1里修改LANG="en_US.Utf-8"防止中文乱码pwd,显示当前工作目录cd,改变目录ls,列出文件和目录
a)lsa,显示目录下的所有文件,包括隐藏文件b)lsl,显示长列表格式c)
ls-al
mkdir,建立目录
rmdir,删除空目录,如果里面有内容rmrtab,补全命令,有相同前缀可双击tabtouch,建立空文件cp,复制命令
a)【案例】cprdir1dir2,递归复制命令(复制子目录信息)10.mv,移动文件和改文件名1rm,删除文件和目录
a)rmrf*,删除所有内容,包含目录和文件,r表示递归,f表示强制1ln,建立符号连接,类似于建立某个文件的快捷方式
a)lns源目标
b)【案例】lns/etc/inittabinittabinittab指向实际文件/etc/inittabinittab1more,显示文件内容带分页,长空格下翻,无上翻1less,显示文件内容带分页,up上翻,1grep,在文本中查询内容
a)【案例】假设存在某个文件aaa.java中含有shunping关键字,此时可以使用grep
名命令来查找,grep-n“shunping”aaa.java,n表示在第n行出现
1|,管道命令,在linux和unix系统
a)怎么理解?
把上一个命令的结果交给|后面的命令处理b)【案例】lsl/etc/|more
1man[command],帮助,类似于dos中的help
1find,搜索文件及目录。
在linux中,因为文件系统是以级别式的结构来组成的,所以要
在整个系统中找到特定的文件和目录并不是件容易的事。
而“find”命令可以解决上述问题
a)在特定的目录下搜索并显示指定名称的文件和目录
i.
【案例】find/-nameman意思是说从根目录开始搜索名称为man的文件或目录
b)搜索一段时间内被存取/变更的文件或目录
i.ii.iii.iv.c)
【案例】find/home-amin-10十分钟内存取的文件或目录【案例】find/home-atime-10十小时内存取的文件或目录【案例】find/home-cmin-10十分钟内更改过的文件或目录【案例】find/home-ctime+10十小时前更改过的文件或目录
搜索指定大小的文件i.
【案例】find/home-size+10k意思是说查找/home目录下大小为10k的文件
1重定向命令
a)ls-l>a.txt,列表的内容写入文件a.txt中(覆盖写)b)ls-al>>aa.txt,列表的内容追加到文件aa.txt的末尾c)
从文件中输入信息database_program2)zipaa.zip文件名1文件名23)zipraa.zip文件夹路径a)以zip和unzip处理.zip文件
i.
zip命令的基本使用方法
a)zipfile.zip*zip后接压缩后的文件名,在它的后面输入要压缩的文件即
可
ii.
压缩后,自动删除原文件
a)【案例】zipmfile.zipto.txt把to.txt文件压缩成file.zip文件,to.txt会自
动删除的
iii.
将子目录一起压缩
a)【案例】ziprfile.zip*将当前目录下的子目录一起压缩iv.
忽略子目录的内容a)【案例】zipjfile.zip*v.
将已压缩的或没有必要压缩的文件去掉
a)【案例】zipn.mpg:
.jpg:
.gif第一种文件中间要用“”分开vi.
压缩某一日之后的文件
a)【案例】zipt10201*file.zip将当前目录下在201*年10月20日之后文
件压缩
vii.
不压缩链接文件的原文件a)【案例】zipyfile.zip*
viii.
压缩率问题,-1~-9,其中-9的压缩率最高a)【案例】zip-9file.zip*ix.
将不需要压缩的文件排除在外
a)【案例】zipfile.zip*-xfiletxt在压缩时,将当前目录内的filetxt文件
排除在外
b)以unzip命令进行.zip文件的解压缩
i.
直接解压缩文件
a)【案例】unzipfile.zipii.
排除不需要解压缩的文件
a)【案例】unzipfile.zipxfile2除了file2文件外,其他的文件都解压缩iii.
查看压缩包的内容
a)【案例】unzipZfile.zip查看file.zip压缩包的内容,也可以使用“-l”,“-v”
来查看压缩包的内容
c)
以gzip和gunzip处理.gz文件
a)gunzipfile.gz或gzipdfile.gz
linux视频教程第5-6讲.文件权限.用户组
用户组
在linux中的每个用户必须属于一个组,不能独立于组外。
在linux中每个文件有所有者、所在组、其它组的概念
----所有者
一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者用lsahl命令可以看到文件的所有者
也可以使用chown用户名文件名来修改文件的所有者
文件所在组
当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组用lsahl命令可以看到文件的所在组
也可以使用chgrp组名文件名来修改文件所在的组其它组
除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组【案例】
建立两个组policeman(警察),bandit(土匪);
建立三个用户along,panpan(属于policeman),ashuai(属于bandit)用along这个用户登录到系统,创建一个文件,lsl添加组,只能在root用户下操作groupaddpoliceman查看所有组
vi/etc/group或cat/etc/group
所有者owner所在组group其它组others改变用户所在的组查看所有用户信息cat/etc/passwd
说明cat只能看不能改,vi可以看也可以改创建用户,并添加到指定组
useraddg组名用户名useraddgpolicemanalong
UID用户ID,GID组ID
修改文件访问权限(panpan无法进入along主目录)查看along主目录的属性drwx------
修改along主目录的属性(root和文件所有者才有此权限)chmod777along
查看当前用户whoami
任务可以让panpan修改Mytest.javachmod664Mytest.java把一个用户移值到另一个组usermod-g组名用户名usermod-gpolicemanashuai修改文件所有者chown用户名文件名修改文件所有组chgrp组名文件名
文件权限
ls-l中显示的内容如下
-rwxrw-r-1rootroot1213Feb209:
39abc-
10个字符确定不同用户能对文件干什么--
第一个字符代表文件(-)、目录(d),链接(l)
其余字符每3个一组(rwx),读(r)、写(w)、执行(x)---
第一组rwx文件所有者的权限是读、写和执行
第二组rw-与文件所有者同一组的用户的权限是读、写但不能执行第三组r--不与文件所有者同组的其他用户的权限是读不能写和执行
也可用数字表示为r=4,w=2,x=1因此rwx=4+2+1=7注意文件最大权限666,目录最大权限777-
1表示连接的文件数-----
root表示用户root表示用户所在的组1213表示文件大小(字节)Feb209:
39表示最后修改日期abc表示文件名
改变权限的命令
chmod改变文件或目录的权限
chmod755abc赋予abc权限rwxr-xr-x
chmodu=rwx,g=rx,o=rxabc同上u=用户权限,g=组权限,o=不同组其他用户权限chmodu-x,g+wabc给abc去除用户执行的权限,增加组写的权限chmoda+rabc给所有用户添加读的权限
改变所有者(chown)和用户组(chgrp)命令chownxiaomingabc改变abc的所有者为xiaomingchgrprootabc改变abc所属的组为root
改变abc这个目录的所有者是root
改变abc这个目录及其下面所有的文件和目录的所有者是root
改变用户所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样用root的管理权限可以改变某个用户所在的组
-
usermodg组名用户名
你可以用-
【综合案例】
【题1】建立两个用户组group1和group2,以及三个用户dennis、daniel、abigale,并且将前2个用户分配在group1用户组下,后一个分配在group2用户组下
usermodd目录名用户名,改变该用户登录的初始目录
【题2】以dennis用户登录,创建一个Hello.java文件
【题3】以daniel用户登录,观察是否可以访问/home/dennis目录以及读或写其创建的Hello.java文件
【题4】以dennis用户登录,修改目录/home/dennis及Hello.java文件的读写权限(更正修改目录权限的时候,应该使用770,而不是760,否则权限不足)
【题5】重复【题3】
【题6】改变abigale的用户组由group2变为group1
然后,可以使用cat/etc/passwd查看并确定
【参考】-
groupadd组名,在linux中添加组-----
vi/etc/group,查看linux中所有组信息,可以看可以编辑cat/etc/group,查看linux中所有组信息,只可以看不可以编辑useraddg组名用户名,创建用户的同时指定将该用户分配到哪个组下vi/etc/passwd,查看linux中所有用户信息,可以看可以编辑cat/etc/passwd,查看linux中所有用户信息,只可以看不可以编辑
linux视频教程第7讲.J2EE环境配置
J2EE环境搭建
jdk安装步骤-
把mypackage.iso挂载到linux操作系统上----
在vm做好配置
mount/mnt/cdrom,挂载光驱unmount/mnt/cdrom,卸载光驱
把安装文件拷贝到/home-
cp文件/home
-安装-
---
查看一个文件vi/etc/profile[环境配置文件]#注释
配置先前安装的jdk
jdk0_06配置完毕需要注销一下eclipse安装步骤--
挂载共享文件
把安装文件拷贝到/home--
安装--
tarzxvfeclipse-SDK-1-linux-gtk.tar.gzcp文件/home
进入图形界面,运行eclipse需要桌面支持-
startx
-启动eclipse-
安装步骤--
挂载共享文件
把安装文件拷贝到/home--
安装--
文件/home
注意点--
进入图形界面安装支持,否则报错选择已安装的eclipse的主目录
-重新启动eclipse--
这时会发现,菜单栏上多了一个MyEclipse选项
tomcat安装步骤
我们知道javaee的服务器有tomcat、jboss、weblogic、websphere、resin…这些都可以安装到linux下,我们给人家安装tomcat,安装步骤如下
--
挂载共享文件
把安装文件拷贝到/home--
安装--
测试--
编写一个简单的jsp页面配置tomcat和j