聊天程序设计嵌入式linux课程设计报告


    




    课程设计成果


    院(系)_电气信息工程学院_ 班 级 计科普
    学生姓名 学 号
    设计点(单位)___ _________ _______
    设计题目_____ 聊天程序设计_________________________ _
    完成日期: 2011 年 9 月 X 日

    指导教师评语 _______________________________________
    _________________________________________________________________________________________________________________________________________________________________________________________________________

    成绩(五级记分制)______ __________
    教师签名_________________________

    嵌入式linux电子行业应广泛学嵌入式linux显非常重次课程设计目检验学期学linux效果通基础题代码编写熟悉linux C语言编程技巧通完成聊天程序设计熟悉linux底层编程利QT设计界面缩短开发时间

    关键字:嵌入式linux基础题聊天程序QT































    目 录
    课程设计务书 4
    题目 基础题 6
    1 设计容求 6
    11 二题 6
    12三题 6
    13四题 7
    13五题 9
    14六题 11
    15七题 11
    16八题 13
    题目二 聊天程序设计 15
    1.设计容求 15
    11 聊天程序基求 15
    12 需实现功 15
    2.需求分析 15
    21 QT设计 15
    22服务器端客户端数传输方式 16
    23 服务器端功设计 16
    24客户端功设计 17
    3.总体设计 17
    31 总体功 17
    4 详细设计 17
    41 功分析描述 17
    42 客户端功模块 17
    43 服务器功模块 19
    5 代码实现 20
    51 客户端代码 20
    52 服务器端代码 22
    6.功实现 23
    7.总结 23
    8.致谢 23
    9.参考文献 23





    课程设计务书
    设计题目:基础题目
    学生姓名

    课程名称
    嵌入式linux课程设计
    专业班级
    计科普


    起止时间
    2011829201199
    设计容求


    GCC编译器LINUX系统C程序设计编译调试方法
    1 编写程序数组容倒置a[]123456789
    2 利指针数A容复制数B
    3 创建两线程通印输出线程号印次序求印结果出两线程发执行
    4 创建两线程A线程通消息队列发消息B线程收屏幕印输出求两线程印出线程号消息容
    5 创建两线程A线程循环印数组a[100]B线程循环数组成员+1求利互斥锁次输出a[0]a[99]
    6 创建两线程A线程2秒印次字母AB线程秒印次字母B求利步信号量输出字母B总A
    8通Makefileproject中c编译成ac调a函数求实现静态库生成调运行结果正确
    设计
    参数

    进度

    第周完成
    参考资料

    1嵌入式Linux应程序开发标准教程民邮电出版社华清远见嵌入式培训中心20107
    2ZLG ARMMAGIC2410实验指导资料





    设计题目:聊天程序设计
    学生姓名

    课程名称
    嵌入式linux课程设计
    专业班级
    计科普


    起止时间
    2011829201199
    设计容求


    1QT(miniGUI)编写聊天程序交叉编译载目标机实现两台目标机发送文聊天
    2QT(miniGUI)界面设计少包括发送重置两钮求必须目标机硬件键盘映射QT设计软件界面中实现软件钮功

    选作:发送文件


    设计
    参数




    进度

    做完基础题目开始做题目
    参考资料
    1嵌入式Linux应程序开发标准教程民邮电出版社华清远见嵌入式培训中心20107
    2ZLG ARMMAGIC2410实验指导资料






    说明

    1表应次实施前周负责教师填写二份学院审批交学院教务办备案份负责教师留2填写容较纸附3题名学生设计容参数求等方面应区
    系: 指导教师: 2011年 9 月 5 日
    题目 基础题
    1 设计容求
    11 二题
    (1) 编写程序数组容倒置a[]123456789
    (2) 程序代码实现:
    char a[]0123456789 ①
    char tmp
    int i 0j 0
    for(i 0j strlen(a)1i{
    tmp a[i]
    a[i] a[j]
    a[j] tmp
    }
    for(i 0i printf(ca[i])
    printf(\n)
    (3)程序分析:
    ①定义数组
    ②数组容倒置
    ③输出倒置数组容
    (4)程序执行效果:

    12三题
    (1)利指针数A容复制数B
    (2)程序代码实现:
    char A[] abcd
    char B[] 1234 ①
    int i 0
    char *tmp ②
    tmp A ③
    for(i 0i B[i] *tmp++

    for(i 0iprintf(cB[i])
    printf(\n)
    (3)程序分析:
    ①定义数组
    ②定义指针
    ③指针指数组A
    ④移动指针拷贝数字B中
    ⑤显示拷贝数组
    (4)程序执行效果:

    13四题
    (1)创建两线程通印输出线程号印次序求印结果出两线程发执行
    (2)程序代码:
    #define THREAD_NUMBER 2
    #define REPEAT_NUMBER 5
    #define DELAY_TIME_LEVELS 100

    void * thrd_func(void *arg) ①
    {
    int thrd_num (int)arg
    int delay_time 0
    int count 0
    printf(Thread d is starting\n thrd_num)
    for (count 0 count < REPEAT_NUMBER count++)
    {
    delay_time (int)(rand() * DELAY_TIME_LEVELS(RAND_MAX)) + 1
    sleep(delay_time) ②
    printf(\tThread d job d delay d\n thrd_num count delay_time)
    }
    printf(Thread d finished\n thrd_num)
    pthread_exit(NULL) ③
    }

    int main(void)
    {
    pthread_t thread[THREAD_NUMBER]
    int no 0 res
    void * thrd_ret
    for (no 0 no < THREAD_NUMBER no++) ④
    {
    res pthread_create(&thread[no] NULL thrd_func (void*)no)
    }
    for (no 0 no < THREAD_NUMBER no++)
    {
    res pthread_join(thread[no] &thrd_ret)
    }
    return 0
    }
    (3)程序分析:
    程序中创建2线程更加方便描述线程间行执行2线程重执行函数线程5次循环次循环间会机等110s时间意义模拟务达时间机更加形象出线程间行执行
    ① 创建线程执行函数程序中2线程重执行函数
    ② 线程延时延时时间机产生
    ③ 线程退出
    ④ 创建2线程
    (4)程序执行效果:

    13五题
    (1)创建两线程A线程通消息队列发消息B线程收屏幕印输出求两线程印出线程号消息容
    (2)程序代码:
    #define BUFSZ 512
    #define THREAD_NUMBER 2
    struct message ①
    {
    long msg_type
    char msg_text[BUFSZ]
    }
    struct message msg
    int qid *Create queue*
    void * thrd_func0(void *arg) ②
    {
    int thrd_num (int)arg
    int len 0
    printf(Thread d is starting\n thrd_num)
    sprintf(msgmsg_textssend the msg)
    msgmsg_type getpid()
    len strlen(msgmsg_text)
    *添加消息消息队列*
    msgsnd(qid &msg len 0) ③
    printf(send the message iss\n(&msg)>msg_text)
    pthread_exit(NULL) ④
    }
    void * thrd_func1(void *arg) ⑤
    {
    int thrd_num (int)arg
    printf(Thread d is starting\n thrd_num)
    *读取消息队列*
    msgrcv(qid &msg BUFSZ getpid() 0) ⑥
    printf(recv the message iss\n(&msg)>msg_text)
    pthread_exit(NULL)
    }
    void *(*const func[THREAD_NUMBER])(void *){thrd_func0thrd_func1}
    int main(void)
    {
    pthread_t thread[THREAD_NUMBER]
    int no 0 res
    void * thrd_ret
    key_t key
    int len
    key ftok( 'a') ⑦
    qid msgget(keyIPC_CREAT|0666) ⑧
    for (no 0 no < THREAD_NUMBER no++)
    {
    res pthread_create(&thread[no] NULL func[no] (void*)no)
    }
    for (no 0 no < THREAD_NUMBER no++) ⑨
    {
    res pthread_join(thread[no] &thrd_ret)
    }
    (msgctl(qid IPC_RMID NULL) ⑩
    return 0
    }
    (3) 代码分析:
    该程序实现消息队列进行线程间通信包括消息队列创建消息发送读取消息队列撤销删等操作
    ① 定义消息队列消息结构体
    ② 创建线程0消息队列发送消息
    ③ 添加消息消息队列
    ④ 退出线程
    ⑤ 创建线程1消息队列读取消息
    ⑥ 读取消息队列
    ⑦ 根路径关键表示产生标准key
    ⑧ 创建消息队列
    ⑨ 等线程
    ⑩ 系统核中移走消息队列
    (4)程序执行效果:

    14六题
    (1)创建两线程A线程循环印数组a[100]B线程循环数组成员+1求利互斥锁次输出a[0]a[99]
    (2)程序源代码:

    (3)程序分析:

    15七题
    (1)创建两线程A线程2秒印次字母AB线程秒印次字母B求利步信号量输出字母B总A
    (2)程序代码:
    #define THREAD_NUMBER 2
    sem_t sem[THREAD_NUMBER]
    void * thrd_func0(void *arg) A ①
    {
    arg arg
    while(1)
    {
    printf(A\n) ②
    sem_post(&sem[1]) ③
    sleep(2) ④
    }
    pthread_exit(NULL) ⑤
    }
    void * thrd_func1(void *arg) B ⑥
    {
    arg arg
    while(1)
    {
    sem_wait(&sem[1]) ⑦
    printf(B\n) ⑧
    sleep(1) ⑨
    }
    pthread_exit(NULL)
    }
    void *(*const func[THREAD_NUMBER])(void *){thrd_func0thrd_func1}
    int main(void)
    {
    pthread_t thread[THREAD_NUMBER]
    int no 0 res
    void * thrd_ret
    for (no 0 no < THREAD_NUMBER no++) ⑩
    {
    res pthread_create(&thread[no] NULL func[no] (void*)no)
    }
    printf(Create thread success\n Waiting for threads to finish\n)
    for (no 0 no < THREAD_NUMBER no++)
    {
    sem_destroy(&sem[no])
    }
    return 0
    }
    (3)程序分析:
    程序创建两线程实现A线程2秒印次字母AB线程秒印次字母B利步信号量输出字母B总A
    ① 创建线程0执行函数印字符’A’
    ② 印字符’A’
    ③ 信号量1进行V操作
    ④ 延时2s
    ⑤ 退出线程
    ⑥ 创建线程1执行函数印字符’B’
    ⑦ 信号量1进行P操作
    ⑧ 印字符’B’
    ⑨ 延时1s
    ⑩ 创建线程
    (4)程序执行效果:

    16八题
    (1)通Makefileproject中c编译成ac调a函数求实现静态库生成调运行结果正确
    (2)编写静态库程序threadc:
    #include
    void pf1(void)
    {
    printf(********\n)
    return
    }
    void pf2(void)
    {
    printf(#########\n)
    return
    }
    该程序定义两函数分印容该程序编译成a静态库
    编写调程序callc:
    extern void pf1(void)
    extern void pf2(void)
    int main(void)
    {
    pf1()
    pf2()
    return 0
    }
    该程序静态库进行调调静态库中两函数pf1pf2
    编写Makefile:
    CCgcc
    CPPFLAGSc
    OBJS threado
    SOURCE threadc
    CALL_SOURCEcallc
    LIB libthreada
    EXECcall
    ARar
    thread {OBJS}
    {CC} c {SOURCE} o {OBJS}
    {AR} rcsv (LIB) threado
    {CC} o {EXEC} {CALL_SOURCE} L lthread
    PHONY clean
    clean
    rm f {OBJS} {EXEC} {LIB}
    Makefile文件实现静态库程序编译成a静态库编译调静态库程序callc执行文件call
    (4)程序执行效果:





















    题目二 聊天程序设计
    1.设计容求
    11 聊天程序基求
    1QT(miniGUI)编写聊天程序交叉编译载目标机实现两台目标机发送文聊天
    2QT(miniGUI)界面设计少包括发送重置两钮求必须目标机硬件键盘映射QT设计软件界面中实现软件钮功
    12 需实现功
    (1) 客户端输入服务器IP端口号
    (2) 服务器必须成功启动
    (3) 客户端寻找服务器服务器建立连接
    (4) 客户端服务器实现通信
    (5) 通信容显示面板
    (6) 利QT设计界面载MagicARM2410面
    2.需求分析
    21 QT设计
    QT设计编写调试阶段周立功MagicARM2410箱子提供QT for PC编译器运行测试阶段QT for ARM编译器
    QT for PC阶段编译程序步骤(编译hellocpp程序例):
    (1)进入x86qtopia目录运行setenv脚设置环境变量
    setenv
    (2)进入hello目录然progen工具生成工程文件hellopro
    cd hello
    vi hellocpp
    progen –t appt –o hellopro
    (3)tmake工具生成hello工程Makefile文件
    tmake o Makefile hellopro
    (4)修改Makefile文件LIBS变量中增加需库然输入make命令编译
    LIBS (SUBLIBS) L(QTDIR)lib lqte lm lstdc++
    make
    (5)启动虚拟控制台运行hello程序(机须启动帧缓必须够访问devfb0)
    cd zylinuxx86qtopia
    setenv
    cd hello
    hello –qws
    果Hello程序发布MagicARM2410运行需进行工作:
    (6)进入zylinuxarmqtopia目录hello工程复制前目录
    cd zylinuxarmqtopia
    cp –av zylinuxx86qtopiahello
    (7)运行前目录setenv文件重新设置环境变量进入hello目录tmake工具重新生成Makefile文件
    setenv
    cd hello
    tmake o Makefile hellopro
    (8)步骤(4)方法修改包含库编译执行文件hellohello文件添加文件系统中更新文件系统
    (9)插入USB鼠标USB键盘启动MagicARM2410启动Qtopia终端运行hello程序
    利样编译方法客户端QT程序进行编译调试
    211 客户端QT界面设计
    客户端QT需基组件:
    (1)两QEditLine输入服务器IP址(读写)输入服务器端口号(读写)
    (2)三钮连接服务器发送消息清空发送区域数
    (3)四标签显示组件容
    (4)两MultiLineedit显示通信容(读)作发送区域(读写)
    22服务器端客户端数传输方式
    服务器端客户端数TCP套接字传输IP址表示Internet计算机端口号标识正计算机运行进程端口号IP址组合出网络套接字客户端linux C 函数socket建立服务器套接字连接
    套接字连接socket建立利linux C语言中send函数recv函数实现简单发送接收消息
    23 服务器端功设计
    时间限服务器没QT编写界面实现简单控制程序服务器实现:
    (1)创建套接字
    (2)套接字IP址端口号进行绑定
    (3)进行监听
    (4)等客户端连接
    (5)客户端接收发送数
    24客户端功设计
    客户端QT设计界面客户端实现功:
    (1)创建套接字
    (2)连接服务器
    (3)服务器通信
    3.总体设计
    31 总体功
    根需求做分析聊天程序需实现基功应包括方面:
    (1) 客户端输入服务器IP端口号
    (2) 服务器必须成功启动
    (3) 客户端寻找服务器服务器建立连接
    (4) 客户端服务器实现通信
    (5) 通信容方便查
    QT设计界面简洁方操作简单方便容易手户快速掌握操作流程
    4 详细设计
    41 功分析描述
    聊天工具包括两功模块:客户端服务器端具体实现功创建套接字连接通信接收数显示发送数
    42 客户端功模块

    421 连接服务器
    连接服务器前需解析服务器址创建套接字设置sockaddr_in 结构体中相关参数

    422发送消息功
    连接功开始聊天前必须进行步骤连接成功进行发送消息
    发送消息功流程图图25示:


    图25 发送消息功流程图
    423接收消息模块
    连接成功接收服务器发送数

    43 服务器功模块
    服务器设计没QT编写界面服务器端实现功:


    图28 服务器模块流程图
    5 代码实现
    51 客户端代码
    511 QT构造析构函数
    EditDemoEditDemo( QWidget *parent const char *name)QWidget(parent name)
    {
    QGridLayout *grid new QGridLayout(this 6 3 0 0)
    IP addr
    QLabel *label1 new QLabel( IP Addr this)
    grid>addWidget( label1 0 0 )
    edit_ip new QLineEdit(this)
    edit_ip>setText(127001)
    grid>addWidget( edit_ip 0 1 )
    Server Port
    QLabel *label2 new QLabel( Server Port this)
    grid>addWidget( label2 1 0)
    edit_port new QLineEdit(this)
    edit_port>setText(4321)
    grid>addWidget( edit_port 1 1)
    QPushButton *btn new QPushButton(Connect this) *add the connect button*
    grid>addWidget( btn 2 1) *add the button*
    connect(btn SIGNAL(clicked()) this SLOT(ButtonConnect()))

    multiline input mode
    QLabel *label3 new QLabel( Contract Area this)
    grid>addWidget(label3 3 0)
    multiedit_contract new QMultiLineEdit(this)
    multiedit_contract>setReadOnly(1)set read only
    grid>addWidget(multiedit_contract31)

    QLabel *label4 new QLabel( Send Area this)
    grid>addWidget(label4 4 0)
    multiedit_send new QMultiLineEdit(this)
    grid>addWidget(multiedit_send41)
    QPushButton *button_send new QPushButton(Send this) *add the send button*
    grid>addWidget( button_send 5 0)
    connect(button_send SIGNAL(clicked()) this SLOT(ButtonSend()))
    QPushButton *button_clear new QPushButton(Clear this) *add the clear button*
    grid>addWidget( button_clear 5 1)
    connect(button_clear SIGNAL(clicked()) this SLOT(ButtonClear()))
    }
    EditDemo~EditDemo()
    {
    if(socket_flag 1)*if create socket success*
    {
    close(sockfd) *Close the socket*
    printf(Close the socket\n)
    }
    }
    512 创建套接字
    void EditDemoCreateSocket(void)
    {
    *址解析函数*
    host gethostbyname(edit_ip>text())
    *创建socket*
    sockfd socket(AF_INETSOCK_STREAM0)
    *设置sockaddr_in 结构体中相关参数*
    serv_addrsin_family AF_INET
    serv_addrsin_port htons(atoi(edit_port>text()))
    serv_addrsin_addr *((struct in_addr *)host>h_addr)
    bzero(&(serv_addrsin_zero) 8)
    }
    513 创建线程
    void *task(void *arg)
    {
    int recvbytes 0
    char buf[BUFFER_SIZE] {0}
    arg arg
    while(1)
    {
    if((recvbytes recv(sockfd buf BUFFER_SIZE 0)) > 0)
    {
    multiedit_contract>append(Server said +(QString)buf)
    }
    }
    }
    void CreateThread(void)
    {
    int result 0
    result pthread_create(&thread1 NULL task (void *)0) *Create Thread*
    }
    52 服务器端代码
    #define PORT 4321
    #define BUFFER_SIZE 1024
    #define MAX_QUE_CONN_NM 5
    int main()
    {
    struct sockaddr_in server_sockaddr client_sockaddr
    int sin_size recvbytes
    unsigned int sendbytes 0
    int sockfd client_fd
    char buf[BUFFER_SIZE]
    *建立socket连接*
    sockfd socket(AF_INETSOCK_STREAM0)
    *设置sockaddr_in 结构体中相关参数*
    server_sockaddrsin_family AF_INET
    server_sockaddrsin_port htons(PORT)
    server_sockaddrsin_addrs_addr INADDR_ANY
    bzero(&(server_sockaddrsin_zero) 8)
    int i 1* 重复址套接字进行绑定 *
    setsockopt(sockfd SOL_SOCKET SO_REUSEADDR &i sizeof(i))
    *绑定函数bind*
    ibind(sockfd (struct sockaddr *)&server_sockaddr sizeof(struct sockaddr)
    *调listen函数*
    listen(sockfd MAX_QUE_CONN_NM)
    *调accept函数等客户端连接*
    client_fd accept(sockfd (struct sockaddr *)&client_sockaddr &sin_size)
    *调recv函数接收客户端请求*
    while(1)
    {
    memset(buf 0 sizeof(buf))
    recvbytes recv(client_fd buf BUFFER_SIZE 0)
    if(recvbytes > 0)
    {
    printf(Received a message s\n buf)
    printf(Send a message s\n buf)
    (sendbytes send(client_fd buf strlen(buf) 0)
    }
    }
    close(sockfd)
    exit(0)
    }
    6.功实现

    7.总结
    通次嵌入式linux程序设计编程linux编程更深解特QT编程进步通测试编写程序利运行时间紧迫服务器部分没QT设计界面编写客户端QT程序成功仿真运行
    编写代码程中非常认真努力解决BUG
    8.致谢
    感谢学院次嵌入式linux课程设计机会时感谢帮组老师学
    9.参考文献
    [1] 嵌入式Linux应程序开发标准教程民邮电出版社华清远见嵌入式培训中心20107
    [2] ZLG ARMMAGIC2410实验指导资料



    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 3 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    仿QQ聊天系统课程设计

    仿QQ聊天系统课程设计目录绪论 1一.需求分析 11.1软件功能需求分析 21.2 安全需求分析 2二.总体设计 32.1 软件结构图 32.2 功能描述 32.2.1注册功能概要 42.2....

    3年前   
    658    0

    《Web开发》课程设计报告聊天室

    《Web开发》课程设计报告(2011— 2012学年 第 2 学期)题 目: 聊 天 室 专 业: 计算机网络技术 班 ...

    3年前   
    615    0

    简单的局域网聊天程序试验报告课程设计

    C++面向对象课程设计报告院(系): 计算机工程学院 专业: 软件工程 学生姓名: __  ...

    1年前   
    299    0

    嵌入式linux学习心得(精选多篇)

    嵌入式linux学习心得(精选多篇)第一篇:嵌入式linux学习内容知识结构1. 嵌入式处理器与裸机程序开发 2. linux系统管理 3. linux应用程序开发 4. linux驱动程序开...

    9年前   
    387    0

    图书馆程序设计程序设计综合课程设计报告

    XX学院计算机科学与技术系信息管理与信息系统专业《程序设计综合课程设计》报告 (2010/2011学年 第一学期)学生姓名: 学生班级: 信息管理与信...

    2年前   
    553    0

    Linux中samba服务器配置方法课程设计报告

    《网络操作系统》课程设计报告题 目 Linux中samba服务器配置方法 姓 名 __ 学 号 同 组 者 ...

    3年前   
    490    0

    基于Linux的FTP服务器的安装与配置课程设计

    1 引言1.1课程设计目的 自从有了网络以来,通过网络来传输文件一直是一项很重要的工作,不但可以实现文件的下载和上传,而且可以设置不同的用户访问权限,并支持大文件的断点续传功能。采用F...

    1年前   
    314    0

    linux编程SHELL编程实验报告

    Linux编程课程设计报告题 目: Linux Shell编程 专 业 学 号 姓 名 ...

    1年前   
    607    0

    非编码键盘的扫描程序设计课程设计

    摘 要 11设计方案 21.1 设计任务 21.2 设计方案 22系统硬件设计 32.1最小应用系统 32.2 8155扩展电路 42.3 矩阵键盘接口电路 62.4 LCD1602...

    2年前   
    344    0

    仿QQ聊天系统实验报告

    软件工程项目实践 大作业 仿QQ软件的设计与实现软件工程项目实践 大作业仿QQ软件的设计与实现班级:学号:姓名:教师:平时成绩30分: + 大作业成绩:70分: = 总分:...

    3年前   
    744    0

    linux与windows 编程区别

    linux windows 编程的区别 如果一个程序员从来没有在linux,unix下开发过程序,一直在windows下面开发程序, 同样是工作10年, 大部分情况下与在linux,unix...

    7年前   
    2601    0

    linux学习心得

    linux学习心得第一篇:linux学习心得linux学习心得我们这一代90后,从小接触的是windows98,家里条件好的自己有电脑装的是2014,后来又有了xp,上大学时又有了win7。说...

    10年前   
    343    0

    操作系统课外实践报告Linux进程管理

    操作系统课外实践报告项 目 名 称: Linux 进程管理 所 在 班 级: 软件工程(10.Ne...

    1年前   
    313    0

    嵌入式ARM的贪吃蛇游戏课程设计

    成 绩 评 定 表学生姓名班级学号专 业测控课程设计题目基于ARM的贪吃蛇游戏设计评语组长签字:成绩日期 20 年 月 日课程设计任务书学 院信息科学与工程...

    1年前   
    309    0

    粤嵌开发板电子相册嵌入式课程设计

    课程设计说明书题 目: 电子相册 无效果图课程名称: 嵌入式系统 学 院: 专 业:学 号: 姓 ...

    1年前   
    644    0

    嵌入式实验报告三

    嵌入式实验报告三一、实验目的:1.学习cygwin;2.通过上机实验,使学生验证、巩固和充实所学理论知识,加深对相关内容的理解,了解嵌入式Linux的内核布局,掌握内核配置及编译方法。二、实验...

    8个月前   
    176    0

    基于Linux的广告机系统

    基于Linux的广告机系统基于Linux的广告机系统摘 要一般来说,广告系统,被称为广告系统是在网络信息技术时代的飞速发展中产生的新类型的网络多媒体信息发布系统。在这个系统的基础上,用户可以...

    2年前   
    606    0

    Linux系统管理

    Linux系统管理(1~2章) Linux内核版本 例如:2 5 7 中间为奇数表示开发版,中间为偶数表示稳定版例如:2 6 18 图形界面转向字符终端:ctrl+alt+Fn 重启:...

    12年前   
    11866    0

    话术:新人聊天流程

    亲,您好,我们是入驻天猫卖家服务市场的线上运营服务商,做整店托管服务。现在双十一已经过去了,双十二活动马上就要开始了,店家都已经开始为了年底活动进行准备,冲击销量了。年底活动期间订购一个月赠送两...

    5年前   
    2243    0

    聊天式作文评语

    聊天式作文评语  “中心明确”、“语句优美”、“语句通顺”、“结构严谨”……这一类的作文评语是我们所常用的,久之,味同鸡肋,不写评语,称不上批改作文,写了,又枯燥乏味,对作文水平的提高也没多大...

    11年前   
    535    0

    文档贡献者

    文***品

    贡献于2023-01-28

    下载需要 3 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档