概念题1

增量模型是把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。运用增量模型的软件开发过程是递增式的过程。相对于瀑布模型而言,采用增量模型进行开发,开发人员不需要一次性地把整个软件产品提交给用户,而是可以分批次进行提交。

 

 

值类型和引用类型有什么区别?

值类型变量声明后,不管是否已经赋值,编译器为其分配内存。此时该值存储于栈上;int i=10;执行之前为默认一个值0。

引用类型定义时在栈上开辟一个空间用来存放其在堆上的地址,当赋值或者实例化时候就会在堆上开辟一个空间,然后把堆中的地址存放在栈中,这时候栈就存放了其地址。

值类型(value type):byte,short,int,long,float,double,decimal,char,bool 和 struct 统称为值类型。值类型变量声明后,不管是否已经赋值,编译器为其分配内存。

引用类型(reference type):string 和 class统称为引用类型。当声明一个类时,只在栈中分配一小片内存用于容纳一个地址,而此时并没有为其分配堆上的内存空间。当使用 new 创建一个类的实例时,分配堆上的空间,并把堆上空间的地址保存到栈上分配的小片空间中。

 

值类型的实例通常是在线程栈上分配的(静态分配),但是在某些情形下可以存储在堆中。引用类型的对象总是在进程堆中分配(动态分配)。

所有的值类型都是密封(seal)的,所以无法派生出新的值类型。

 

如何在多线程中避免发生死锁?

当两个或多个线程正在等待彼此释放所需的资源并陷入无限等待时,这种情况称为死锁,它只会发生在多任务或者多线程的情况下。

 

两种遍历方式可以唯一确定一棵二叉树吗?

按照数据结构课本上的说法:

  • 前序遍历+中序遍历
  • 后序遍历+中序遍历

 

二叉树-节点数和边数的关系

 

n0:叶子节点的数量; 
n1:度为1的节点数量; 
n2:度为2的节点数量;

节点的总数量n = n0 + n1 + n2;

边的数量表示1: 
边的数量S = n1 + 2 * n2(这个好理解);

边的数量表示2: 
边的数量S = n - 1; 
注:除了根节点,每个节点,都有一条边,指向该节点;

推导,叶子节点**n0和度为2节点**n2的关系: 
n1 + 2 * n2 = n - 1 
即,n1 + 2 * n2 = n0 + n1 + n2 - 1 
即,n2 = n0 - 1; 
即,n2 + 1 = n0


树的出度=树的入度=树的节点数-1;n0=5,n1=3,n2未知;树的出度=0*n0+1*n1+2*n2=n0+n1+n2-1得n2=4;故树的总节点数为:5+3+4=12

 

预防ddos攻击常用方法有哪些

ddos攻击就是能够利用受控的机器向一台机器进行发起攻击,这样攻击由于来势迅猛就让攻击难以令人进行防备,也正是如此这种攻击就具有很大的破坏性,如果大家想要预防这种攻击的话就要能按以下方法进行。

  方法一:需要能够进行定期的扫描。预防ddos攻击需要能够定期扫描现有的网络主节点,以能好的清查可能存在的安全漏洞,尤其对新出现的漏洞要能进行及时清理;很多时候骨干节点的计算由于具有较高的带宽就成黑客利用的最佳位置,而对这些主机本身加强主机安全就非常重要,且连接到网络主节点的往往都是服务器级别的电脑,这样定期进行漏洞的扫描也变得比较重要。

       方法二:需要能够在骨干节点配置相关防火墙。大家知道防火墙本身就能抵御ddos攻击和其他很多的攻击,在实际中发现受到攻击的时候完全能够将攻击直接去导向一些牺牲性的主机,这样就能有效保证真正的主机不被直接攻击;不过在进行导向的时候,一定要选择一些不重要的主机或者可以直接导向一些具有优秀防范的系统主机上。
       方法三:使用多的计算机以能承受ddos攻击。很多时候使用这种方法效果是最好的,当用户拥有更多容量和足够资源的时候,就非常适合使用这种方法,毕竟在攻击中黑客的能量也在逐渐耗损,面对足够资源和容量攻击方也往往没有其他方法可用;不过需要提醒大家的是,使用这种方法可能会浪费多的资金甚至在平时中让太多的设备一直都处于空闲状态下。
       方法四:好的利用网络设备来进行保护网络资源。在预防ddos攻击中指的网络设备就是路由器和防火墙等负载均衡的设备,这些设备完全可以将网络给有效的进行保护起来;当网络被黑客攻击的时候最先受到影响的是路由器,其其他设备并没有能够收到影响;对于受到影响的路由器仅仅只用重启后还能恢复正常使用,且路由器的启动也是非常快的几乎造成不了什么损失;如果是服务器设备受到影响的话往往会造成数据的丢失,再加上服务器重启需要漫长的过程因此造成的损失就相对过大,还是使用负载设备更好一点。
       方法五:需要过滤不必要的服务和端口。大家完全也可以使用一些工具过滤掉一些不必要的服务和端口以达到预防攻击的目的。
 

Ext3日志文件系统的特点是:

1、高可用性
系统使用了ext3文件系统后,即使在非正常关机后,系统也不需要检查文件系统。宕机发生后,恢复ext3文件系统的时间只要数十秒钟。
2、数据的完整性
ext3文件系统能够极大地提高文件系统的完整性,避免了意外宕机对文件系统的破坏。在保证数据完整性方面,ext3文件系统有2种模式可供选择。其中之一就是“同时保持文件系统及数据的一致性”模式。采用这种方式,你永远不再会看到由于非正常关机而存储在磁盘上的垃圾文件
3、文件系统的速度
尽管使用ext3文件系统时,有时在存储数据时可能要多次写数据,但是,从总体上看来,ext3比ext2的性能还要好一些。这是因为ext3的日志功能对磁盘的驱动器读写头进行了优化。所以,文件系统的读写性能较之Ext2文件系统并来说,性能并没有降低。
4、数据转换
由ext2文件系统转换成ext3文件系统非常容易,只要简单地键入两条命令即可完成整个转换过程,用户不用花时间备份、恢复、格式化分区等。用一个ext3文件系统提供的小工具tune2fs,它可以将ext2文件系统轻松转换为ext3日志文件系统。另外,ext3文件系统可以不经任何更改,而直接加载成为ext2文件系统。
5、多种日志模式
Ext3有多种日志模式,一种工作模式是对所有的文件数据及metadata(定义文件系统中数据的数据,即数据的数据)进行日志记录(data=journal模式);另一种工作模式则是只对metadata记录日志,而不对数据进行日志记录,也即所谓data=ordered或者data=writeback模式。系统管理人员可以根据系统的实际工作要求,在系统的工作速度与文件数据的一致性之间作出选择。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值