精华内容
下载资源
问答
  • 部分是典型模块的设计实现,典型模块选择的几乎是所有大型软件中都会用到的模块。例如登录模块、数据图像显示模块、打印模块、编辑模块等。掌握这些模块的实现是开发大型应用程序的基础。第三部分是典型系统...
  • 1)一致性保证:尽管可线性化(一致性级别)与可串行化(事务级别)属于完全不同的概念(事务隔离主要是为了处理并发执行事务时的各种临界状态,而分布式一致性主要针对延迟故障等问题来协调副本之间的状态),...
    一致性与共识:
    (1)一致性保证:尽管可线性化(一致性级别)与可串行化(事务级别)属于完全不同的概念(事务隔离主要是为了处理并发执行事务时的各种临界状态,而分布式一致性主要针对延迟和故障等问题来协调副本之间的状态),但是基于两阶段加锁和实际串行执行的可串行化是典型的可线性化:不存在并发,且任意两个操作都具有严格的先后顺序。而基于快照隔离的可串行化只保证了因果一致性:无法区分并发写的先后顺序,但是可以保证快照中能看到所有已提交的事务,因一定提交在果之前,只要能看到果,则必然能看到因。
    (2)可线性化:
    [1]可线性化的典型场景:<1>加锁与主节点选举:主节点选举的常用方法是锁,加锁过程必须是可线性化的,每个节点都需要对哪个节点持有锁达成共识;<2>约束与唯一性保证:需要所有节点对某个最新值达成一致。
    [2]实现可线性化的系统:<1>主从复制:部分实现可线性化。在主从复制中,主节点可能存在并发写,但是提供给从节点的复制日志是具有顺序保证的,主从复制通过全序广播实现顺序一致性。主从复制至少保证了顺序一致性,而如果从主节点或者同步的从节点读,则保证了可线性化。<2>共识算法:实现可线性化。共识算法描述了所有节点(对某一个值)达成共识的过程,采用共识算法可以解决分布式系统中网络和时钟不可靠的问题,构建可线性化的系统。共识算法没有一致性级别的区分,可以基于共识算法构建可线性化的系统。<3>多主复制:不可线性化。多主复制存在并发写入,也没有写入顺序的保证(无法定义出操作的全序关系),因此是不可线性化的,需要额外的解决方案。<4>无主复制:可能不可线性化。对于Dynamo风格的数据库,如果严格遵守Quorum,应该是可线性化的(每次成功写入w个节点,从r个节点中获取新值,若w+r大于n,则必然能读到新值)。但是由于网络延迟原因,可能造成还未完全写入便到来读请求,随后写入完成。在客户端看来,写在读之前,却读到了旧值,不满足可线性化。
    [3]线性化的代价:<1>在网络正常的时候,系统可以同时保证一致性(线性化)和可用性,而一旦发生了网络故障,必须要么选择一致性,要么选择可用性。<2>线性化的读写性能较差,不支持线性化是为了提高性能,而不是为了保留容错特性。
    (3)顺序保证:
    [1]排序、可线性化、共识之间的联系:
    <1>主从复制保证了顺序一致性(所有节点都具有操作的全局顺序),但不一定是可线性化的。
    <2>可串行化确保事务的执行结果与按照串行执行一样。在严格串行或者加锁实现的可串行化中,操作是严格有序的,因此是可线性化的;而基于快照的可串行化不是可线性化,快照只能提供因果一致性。
    <3>在分布式系统中,由于时钟是不可靠的,如果存在多个节点写入(分片、多主节点、无主节点),则不存在严格的全局顺序,因此不是可线性化的。
    [2]可线性化与因果关系:在可线性化中,对于任意两个操作,总是可以指定哪个操作在前;可线性化中不存在并发事件,因为并发事件无法区分前后顺序。因果一致性不要求并发有全局一致的次序,但要求因果有序。
    [3]关于分区的主从复制:无论是否分区,向主节点写入时都可能存在并发写,一旦出现并发写,便不存在全局唯一的顺序。主从复制的顺序一致性是指:主节点提供给从节点的复制日志的顺序是确定的,因此从节点都会按照该顺序进行复制。
    对于没有分区的主节点来说,因和果的写入都在同一个数据库中,因此一定可以保证读时的因果一致性(即不会出现读到了果却没有读到因);而对于分区的主节点来说,因果可能写入到了不同分区,而每个分区各自执行了全序广播复制(每个分区各自保持顺序一致性),因此可能出现保存“果”的从节点已经复制完成,而保存“因”的从节点还没有完成复制,此时在从节点读取时只能看到果,不能看到因,无法保证因果一致性。
    <1>没有分区的主从复制:主节点写入时具有因果顺序,使用全序广播同步到从节点时也具有因果一致性,全序广播提供了顺序一致性。<2>分区的主从复制:单个分区同样具有顺序一致性,但从多个从节点读取因果时,可能因果在不同分区、果已同步、因没有同步,此时不具备因果一致性。
    [4]全序广播:
    <1>全序广播指节点间交换信息的某种协议,需要通过算法来实现该协议。全序广播协议提供了如下保证:可靠发送、严格有序。可靠发送指没有消息丢失,如果消息被发送到了一个节点,就会被发送到所有节点。严格有序指消息总是以相同的顺序发送给所有节点。
    <2>全序广播可视为日志,传递消息就像追加日志。
    <3>全序广播保证了顺序一致性,该一致性保证强于因果一致性,因为顺序一致性可以确保所有节点上操作的顺序是确定的,任意比较两个操作的顺序,所有节点的答案相同,而因果一致性不要求并发有全局一致的次序;但顺序一致性弱于可线性化,只保证消息以固定的顺序可靠发送,但不保证何时发送成功,而可线性化强调就近性,读取时保证能看到最新写入的值。
    (3)分布式事务与共识:
    [1]共识算法的场景:<1>主节点选举:就谁来充当主节点达成一致;<2>原子事务提交:所有节点对事务的结果(成功/失败)达成一致。
    [2]原子提交与两阶段提交:<1>两阶段提交(2PC):确保节点要么全部提交,要么全部终止。2PC是没有容错的共识算法,在第一阶段只有全部参与者都同意提交,协调者才会提交事务。2PC屏蔽了网络延迟和节点失效,即使出现上述问题,也会通过不断重试来达成一致。一旦协调者发生故障,2PC将无法顺利完成。<2>三阶段提交:引入超时机制,提高可用性,在协调者故障时也能顺利提交事务,但可能导致不一致。
    [3]支持容错的共识:
    <1>全序广播:全序广播相当于所有节点对log里每一项都达成了共识,是支持容错的共识的一种实现。
    全序广播也屏蔽了网络延迟以及节点失效,因为全序广播总是能够异步到达每一个节点(即使出现错误)。
    主从复制过程使用了全序广播。VSR,Raft,Zab也直接使用了全序广播。
    <2>Quorum:当主节点失效,需要在从节点中选举新的主节点时,全序广播不再有作用,因为全序广播本身需要一个主节点(即可以往log中写入的节点)。
    Quorum提供了在多个从节点中选择新的主节点的方法:首先投票选出新的主节点,并提供一个递增的epoch(防止脑裂)。在主节点做出任何决定之前,都要先检查是否存在比它更高的epoch号码,检查通过后才会广播它的决定。该过程与2PC类似,但Quorum只要收到多数节点投票通过即可通过决议(即Quorum存在容错)。
    [4]成员与协调服务:ZooKeeper、etcd、consul等分布式系统协调工具。
    ZooKeeper:保存少量、可完全载入内存数据的数据库,使用容错的全序广播算法在所有节点上复制这些操作,实现高可靠。ZooKeeper通过全序广播,实现了顺序一致性。
    功能:<1>节点任务分配:帮助实现主从复制中的主节点选举,以及分区资源的负载动态平衡。需要共识。<2>服务发现:向Zookeeper注册服务,并基于DNS查询注册表。服务发现不一定需要共识,可以借助DNS的多级缓存来提高性能。<3>成员服务:用于确定成员节点是否存活,所有节点需对某一特定节点的存活达成共识。

     

    展开全文
  • 实验要求:1、了解掌握典型二阶系统模拟电路的构成方法及Ⅰ二阶闭环系统的传递函数标准式。2、研究Ⅰ二阶闭环系统的结构参数--无阻尼振荡频率ωn 、阻尼比ξ对过渡过程的影响。3、掌握欠阻尼...

    南昌大学实验报告

    d90e55c4dbde254aa64f74ac0787c97b.png

    学生姓名: 学 号: 专业班级:

    实验类型: □验证 ■综合 □ 设计 □ 创新 实验日期: 实验成绩:

    一、实验项目名称:二阶系统瞬态响应和稳定性

    二.实验要求:

    1、了解和掌握典型二阶系统模拟电路的构成方法及Ⅰ型二阶闭环系统的传递函数标准式。

    2、研究Ⅰ型二阶闭环系统的结构参数--无阻尼振荡频率ωn 、阻尼比ξ对过渡过程的影响。

    3、掌握欠阻尼Ⅰ型二阶闭环系统在阶跃信号输入时的动态性能指标Mp 、t p 、t s 的计算。

    4、观察和分析Ⅰ型二阶闭环系统在欠阻尼,临界阻尼,过阻尼的瞬态响应曲线,及在阶跃信号输入时的动态性能指标Mp 、t p 、t s 值,并与理论计算值作比对。

    三、主要仪器设备及耗材:

    1.计算机一台

    2.AEDK-labACT 自动控制理论教学实验系统一套

    3.LabACT6_08软件一套

    四、实验内容和步骤:

    有二阶闭环系统模拟电路如图3-1-7所示。它由积分环节(A2)和惯性环节(A3)构成。 。

    637e1c6ecb80a72b3dab71ff2290f886.png

    图3-1-8 Ⅰ型二阶闭环系统模拟电路

    图3-1-8的二阶系统模拟电路的各环节参数及系统的传递函数:

    积分环节(A2单元)的积分时间常数Ti=R 1*C 1=1S

    惯性环节(A3单元)的惯性时间常数 T=R 2*C 2=0.1S

    该闭环系统在A3单元中改变输入电阻R 来调整增益K ,R 分别设定为 4k 、40k 、100k 。

    电路的开环传递函数为: R

    k R R K S S K TS TiS K S G 100)11.0()1()(2==+=+=其中 电路的闭环传递函数为: K S S K S S s n n n 1010102)(2222++=++=ωξωωφ

    展开全文
  • 1系统处理的准确性及时性:系统处理的准确性及时性是系统的必要性能。在系统设计开发过程中,要充分考虑系统当前将来可能承受的工作量,使系统的处理能力响应时间能够满足信息处理的需求。 2、 系统...
  • 数据库管理系统数据库管理系统种类1.RDBMS(关系数据库)的特点维表典型的产品Oracle传统企业,Msyql是互联网企业数据存取通过SQL最大特点,数据安全性方面强(ACID)强大查询功能,强一致性,级索引2.NoSQL(非...

    数据库管理系统

    数据库管理系统种类

    1.RDBMS(关系型数据库)的特点

    二维表

    典型的产品Oracle传统企业,Msyql是互联网企业

    数据存取通过SQL

    最大特点,数据安全性方面强(ACID)

    强大查询功能,强一致性,二级索引

    2.NoSQL(非关系型数据库)的特点

    不是否定关系型数据库,做关系型数据库的的补充。

    灵活性,扩展性,性能

    现在也在提升安全性和使用功能。

    典型产品:Redis(持久化缓存)、MongoDB(最接近关系型数据的NoSQL)、Memcached

    管理不适用SQL管理,而是用一些特殊的API或数据接口。

    3.NoSQL的分类、特点、典型产品

    键值(KV)存储:Memcached、Redis

    列存储(column-oriented):HBASE(新浪,360)、Cassandra(200台服务器集群)

    文档数据库(document-oriented):MongoDB(最接近关系型数据库的NoSQL)

    图形存储(Graph):Neo4j

    MySQL安装方式

    1.RPM、Yum:安装方便、安装速度快,无法定制

    2.二进制:不需要安装,解压即可使用,不能定制功能

    3.编译安装:可定制,安装慢。

    5.5之前:./configure make makeinstall

    5.5之后:cmakegmake

    4.先编译,然后制作rpm,制作yum库,然后yum安装

    简单、速度快、可定制,比较复杂制作时间长

    企业选择安装方式

    中小企业:以上方式都可以,运维偏向编译,dba偏向选择二进制。

    大型企业:可以选择4

    MySQL源码安装

    1.安装依赖

    yum install -y ncurses-devellibaio-devel

    2.安装cmake

    yum install cmake–y

    3.新建mysql用户

    useradd-s /sbin/nologin-M mysql

    4.下载mysql安装包

    wget https://downloads.mysql.com/archives/get/file/mysql-5.6.42.tar.gz

    5.解压

    tar xf mysql-5.6.42.tar.gz

    6.使用cmake编译

    cd mysql-5.6.42/

    cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.42 -DMYSQL_DATADIR=/application/mysql-5.6.42/data -DMYSQL_UNIX_ADDR=/application/mysql-5.6.42/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_SSL=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DENABLE_DOWNLOADS=1 -DWITH_DEBUG=0

    #进行安装

    make && make install

    7.进行配置并启动mysql

    #制作软链接

    ln -s /application/mysql-5.6.42/ /application/mysql

    #拷贝配置文件到/etc

    cp support-files/my-default.cnf /etc/my.cnf

    #初始化数据库

    /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql

    #创建关键目录并设置权限:

    mkdir -p /application/mysql/tmp

    chown -R mysql.mysql /application/mysql/

    #复制启动脚本到/etc/init.d/mysqld

    cp support-files/mysql.server /etc/init.d/mysqld

    #启动数据库

    /etc/init.d/mysqld start

    #配置环境变量

    echo ‘PATH=/application/mysql/bin/:$PATH‘ >>/etc/profile

    source /etc/profile

    #设置密码:

    mysqladmin -uroot password ‘oldboy123‘

    mysql-uroot -poldboy123

    8.安装完后清理用户及无用数据库(基本优化)

    select user,hostfrom mysql.user;

    drop user ‘‘@‘db02‘;

    drop user ‘‘@‘localhost‘;

    drop user ‘root‘@‘db02‘;

    drop user ‘root‘@‘::1‘;

    select user,hostfrom mysql.user;

    drop database test;

    show databases;

    展开全文
  • 1 进程切换的关键代码switch_to分析 1.1 进程调度与进程调度的时机分析 1.1.1 进程的分类 第一种... 第种分类: 批处理进程(batch process):不必用户交互,通常在后台进行;不必很快的响应;典型例子:编译程...

    1 进程切换的关键代码switch_to分析

    1.1 进程调度与进程调度的时机分析

    1.1.1 进程的分类

    第一种分类:

    I/O-bound:频繁的进行I/O,通常会花费很多时间等待I/O操作的完成。

    CPU-bound:计算密集型,需要大量的CPU时间进行计算。

    第二种分类:

    批处理进程(batch process):不必和用户交互,通常在后台进行;不必很快的响应;典型例子:编译程序、科学计算

    实时进程(real-time process):有实时要求、不应被优先级低的进程阻塞;响应时间短、要稳定;典型例子:视频/音频、机械控制

    交互式进程(interactive process):需要和用户交互,因此要花很多时间等待用户操作;响应时间快;典型例子:shell、文本编辑器、图形应用程序。

    1.1.2 进程调度的时机

    中断处理过程(包括时钟中断、I/O中断、系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用schedule();

    内核线程(只有内核态没有用户态的特殊进程)可以直接调用schedule()进行进程切换,也可以在中断处理过程中进行调度,也就是说内核线程作为一类的特殊的进程可以主动调度,也可以被动调度;

    用户态进程无法实现主动调度(只能被动调度),仅能通过陷入内核态后的某个时机点进行调度,即在中断处理过程中进行调度。

    1.2 进程上下文切换相关代码分析

    为了控制进程的执行,内核必须有能力挂起正在CPU上执行的进程,并恢复以前挂起的某个进程的执行,这叫做进程切换、任务切换、上下文切换。

    挂起正在CPU上执行的进程,与中断时保存现场是不同的,中断前后是在同一个进程上下文中,只是由用户态转向内核态执行;进程上下文切换时两个进程在切换。

    进程上下文包含了进程执行需要的所有信息

    • 用户地址空间: 包括程序代码,数据,用户堆栈等
    • 控制信息 :进程描述符,内核堆栈等
    • 硬件上下文(注意中断也要保存硬件上下文只是保存的方法不同)

    schedule()函数选择一个新的进程来运行,并调用context_switch进行上下文的切换,这个宏调用switch_to来进行关键上下文切换。

    • next = pick_next_task(rq, prev);            //进程调度算法都封装这个函数内部
    • context_switch(rq, prev, next);              //进程上下文切换
    • switch_to利用了prev和next两个参数:prev指向当前进程,next指向被调度的进程

    #define switch_to(prev, next, last)                    \
    do {                                    \
        /*                                \
         * Context-switching clobbers all registers, so we clobber    \
         * them explicitly, via unused output variables.        \
         * (EAX and EBP is not listed because EBP is saved/restored    \
         * explicitly for wchan access and EAX is the return value of    \
         * __switch_to())                        \
         */                                \
        unsigned long ebx, ecx, edx, esi, edi;                \
                                        \
        asm volatile("pushfl\n\t"        /* save    flags */    \
                 "pushl %%ebp\n\t"        /* save    EBP   */    \
                 "movl %%esp,%[prev_sp]\n\t"    /* save    ESP   */ \
                 "movl %[next_sp],%%esp\n\t"    /* restore ESP   */ \
                 "movl $1f,%[prev_ip]\n\t"    /* save    EIP   */    \
                 "pushl %[next_ip]\n\t"    /* restore EIP   */    \
                 __switch_canary                    \
                 "jmp __switch_to\n"    /* regparm call  */    \
                 "1:\t"                        \
                 "popl %%ebp\n\t"        /* restore EBP   */    \
                 "popfl\n"            /* restore flags */    \
                                        \
                 /* output parameters */                \
                 //thread.sp内核堆栈的栈底
                 : [prev_sp] "=m" (prev->thread.sp),        \
                 //thread.ip进程的eip
                   [prev_ip] "=m" (prev->thread.ip),        \
                   "=a" (last),                    \
                                        \
                   /* clobbered output registers: */        \
                   "=b" (ebx), "=c" (ecx), "=d" (edx),        \
                   "=S" (esi), "=D" (edi)                \
                                               \
                   __switch_canary_oparam                \
                                        \
                   /* input parameters: */                \
                   //next->thread.sp下一个进程的内核堆栈的栈底
                 : [next_sp]  "m" (next->thread.sp),        \
                   //next->thread.ip下一个进程执行的起点
                   [next_ip]  "m" (next->thread.ip),        \
                                               \
                   /* regparm parameters for __switch_to(): */    \
                   [prev]     "a" (prev),                \
                   [next]     "d" (next)                \
                                        \
                   __switch_canary_iparam                \
                                        \
                 : /* reloaded segment registers */            \
                "memory");                    \
    } while (0)

    2 linux系统的一般执行过程

    2.1一般的情况

    正在运行的用户态进程X切换到运行用户态进程Y的过程

    • 正在运行的用户态进程X
    • 发生中断——save cs:eip/esp/eflags(current) to kernel stack,then load cs:eip(entry of a specific ISR) and ss:esp(point to kernel stack).    //保存和加载有CPU自动完成
    • SAVE_ALL             //进入内核代码,首先保存现场
    • 中断处理过程中或中断返回前调用了schedule(),其中的switch_to做了关键的进程上下文切换
    • 标号1之后开始运行用户态进程Y(这里Y曾经通过以上步骤被切换出去过因此可以从标号1继续执行)
    • restore_all               //恢复现场
    • iret - pop cs:eip/ss:esp/eflags from kernel stack
    • 继续运行用户态进程Y

    2.2 几个特殊过程

    • 通过中断处理过程中的调度时机,用户态进程与内核线程之间互相切换和内核线程之间互相切换,与最一般的情况非常类似,只是内核线程运行过程中发生中断没有进程用户态和内核态的转换
    • 内核线程主动调用schedule(),只有进程上下文的切换,没有发生中断上下文的切换,与最一般的情况略简略;
    • 创建子进程的系统调用在子进程中的执行起点及返回用户态,如fork;
    • 加载一个新的可执行程序后返回到用户态的情况,如execve;

    内核是各种中断处理过程和内核线程的集合,内核态的部分共享,是一样的。

    3 linux系统架构和执行过程概览

    3.1 linux系统架构概览

    image

    典型的linux架构

    3.2 分析ls命令

    360反馈意见截图16230323335034

    4 从CPU和内存看Linux系统的执行

    4.1 CPU角度

    image

    main函数中有个gets()以获取字符串,执行gets这个系统调用会陷入到内核态,在等待键盘输入的过程,CPU会调度到其他进程,同时,在执行其他进程的过程中,会等待输入。当在键盘上敲击字符时,会产生IO中断给CPU,CPU进行中断处理,在中断处理过程中,接受了一个键盘输入,进而判断是X进程在等待键盘输入。开始时,x进程执行到gets陷入到内核态时,若没有键盘输入会进入阻塞态,有了键盘输入后,会把X进程设为就绪态,进程管理切换到进程X,gets系统调用获得了读入的数据,返回到用户态,继续执行下一条指令。

    4.2 从内存角度

    image

     

    转载于:https://www.cnblogs.com/boyiliushui/p/5489851.html

    展开全文
  • week 8 进程的切换和系统的一般执行过程 一、进程调度与进程切换 1.不同的进程有不同的调度需求 第一种分类: I/O密集(I/O-bound) 频繁的进行I/O 通常会花费很多时间等待I/O操作的完成 CPU密集(CPU-bound...
  • 计算机系统要素

    2016-12-14 22:07:00
    布尔代数处理布尔(也称为进制)数值,比较典型的有true/false、1/0、yes/no、on/off等等。在这里我们使用1和0。 布尔函数(Boolean function)是指输入输出数值均为布尔数值的函数。 真值表表示法(Truth ...
  • 针对传统的次非球面折射激光扩束器存在不易加工、装调困难、体积大、重量大,特别是难以获得高填充比阵列透镜等不足,提出了一种利用衍射台阶化面近似次非球面的激光扩束器方案,结果表明:对于典型的束腰...
  • 1.不同的进程有不同的调度需求 第一种分类: I/O密集(I/O-bound) 频繁的进行I/O 通常会花费很多时间等待I/O操作的完成 CPU密集(CPU-bound) 计算密集 需要大量的CPU时间进行运算 第种分类: 批处理进程 ...
  • 关键词:功率因数校正控制器 DCM/CRM 原理 集成电路1 概述安森美半导体公司推出的NCP1601功率因数校正(PFC)控制器能不连续传导模式(DCM)临界传导模式(CRM或BCM)下工作,它兼有种工作模式的优点。...
  • 根据 小 松 CPZo一6A挖掘机行走液压系统原理图,对第 一种可能性进行分析:左行走马达翰入压力油可能来自3个地 方:①左行走主控阀芯异常开启,前泵压力油通过主阀芯进入左 行走马达,②压力补偿阀1、2窜油,右行走...
  • 数据库管理系统数据库管理系统种类1.RDBMS(关系数据库)的特点维表典型的产品Oracle传统企业,Msyql是互联网企业数据存取通过SQL最大特点,数据安全性方面强(ACID)强大查询功能,强一致性,级索引2.NoSQL(非...
  • ZN-16BJ 信号与系统·控制理论·计算机控制技术实验台集"信号与系统"、“控制理论""计算机控制技术"典型实验环节于一体的教学设备,它能完成"信号与系统”、"控制理论"及"计算机控制技术"教程的全部实验内容。...
  • 定性定量分析了不同噪声强度下维Duffing振子模型随机共振方法的周期特征增强效果,推导了维Duffing振子模型随机共振现象发生的必要条件,并研究了不同参数条件下系统输出信号特征幅值随噪声强度的变化趋势。...
  • 全书共分4个部分,第一部分介绍最基本的概念、术语及建模原则,第部分描述了关系数据模型关系DBMS,第三部分讨论数据库设计,第四部分主要描述数据库系统中使用的物理文件结构存取方法。书中涉及的内容非常...
  • 《android 3d游戏开发技术详解与典型案例》分为两篇共22章,第一篇以简单易懂的实例为依托,详细介绍了opengl es各方面的基础知识,第篇则对7个真实案例的开发步骤进行了详细的介绍,逐步向读者讲解android 3d游戏...
  • 2、将对象间的一对多关联转变为一对一的关联,提高系统的灵活性,使得系统易于维护扩展。 缺点: 当同事类太多时,中介者的职责将很大,它会变得复杂而庞大,以至于系统难以维护。 、模式的结构 中介者模式实现...
  • 2.2GTR的次击穿安全 工作区 2.3GTR暂态保护 3达林顿复合功率模块的 应用 3.1复合达林顿模块的电路 结构 3.2达林顿模块作为开关使用 3.3达林顿模块并行驱动 3.4达林顿模块的应用 4缓冲器设计...
  • 部分讲述面向数据库的概念、语言、设计及对象-关系扩展-关系系统;第三部分主要描述了数据库安全客户-服务器体系结构;第四部分简要介绍了xml、数据挖掘数据仓库等几种新兴技术。  本书是高等院校计算机...
  • 学生成绩管理系统典型的信息管理系统,其开发主要包括后台数据库的建立维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性完整性强.数 据安全性好的库。而对于后者则要求应用程序功能完备,易...
  • ASR系统和ABS系统和密切相关,通常配合使用,构成汽车行驶的主动安全系统。 ABS是防止制动过程中的车轮抱死、保持方向稳定性和操纵性并能缩短制动距离的装置。 而ASR的作用是防止汽车加速过程中的打滑,特别防止...
  • 企业信息系统项目管理的问题点对策 348 浅谈项目管理企业管理的冲突协调发展 351 权力之争使信息化项目内耗严重 355 如何把握信息化项目管理 356 如何化解信息化阻力 358 如何提高信息化建设项目进度控制 359 ...
  • 光谱中没有紫外线红外线,热量低无频闪,无辐射,而且废弃物可回收,没有污染不含汞元素,冷光源,可以安全触摸,属于典型的绿色照明光源。 照明用LED 光源的VF 电压都很低,一般VF =2.75-3.8V,IF 在15-1400...
  • 一、外观模式简介(Brief Introduction) 外观模式,为子系统的一组接口提供一个统一的界面,此模式定义了一个高层接口,这一个高层接口使的子系统更加...这样可以为子系统提供统一的界面接口,降低了系统的耦合性。
  • Linux 操作系统基础教程 清华大学信息学院计算机系 目 录 前言....................................................................................数据量,而一个完整的发行版本大概都是 1Gbit 左右的数据量...
  • 嵌入式系统详细文档

    热门讨论 2004-04-28 00:00:00
    形成一套面向中小型过程应用设备集成控制的开放控制系统。满足工控行业从简单到复杂的各种控制应用要求各种设备过程自动化控制的应用要求,是用来代替硬PLC(可编程控制器)[4] 各种设备过程控制系统的理想...
  • 1、科普的观点 操作系统是计算机系统的管理控制中心,它依照设计者制定的各种调度策略组织管理计算机系统资源,使之能高效地运行。 2、功能的观点 操作系统是一个计算机资源管理系统,它负责计算机系统的全部...
  • 关系数据库非关系数据库1).什么是关系数据库关系数据库,是指采用了关系模型来组织数据的数据库,简单来说,关系模型指的就是维表格模型,而一个关系数据库就是由维表及其之间的联系所组成的一个数据组织...
  • 定义:结构化数据也称作行数据,是由维表结构来逻辑表达实现的数据,严格地遵循数据格式与长度规范,主要通过关系数据库进行存储管理。 结构化数据,简单来说就是数据库。结合到典型场景中更容易理解,...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 183
精华内容 73
关键字:

典型1型系统和典型二型系统