面向信创人才培养的Linux操作系统编程教学改革探索

作者: 戈文一 龚津南 潘光晖

面向信创人才培养的Linux操作系统编程教学改革探索0

关键词:信创;Linux;操作系统;教学改革;国产化

中图分类号:G642 文献标识码:A

文章编号:1009-3044(2024)21-0142-03

0 引言

习近平总书记在党的二十大报告中指出:“加快实施创新驱动发展战略,加快实现高水平科技自立自强,以国家战略需求为导向,集聚力量进行原创性引领性科技攻关,坚决打赢关键核心技术攻坚战,加快实施一批具有战略性全局性前瞻性的国家重大科技项目,增强自主创新能力。”信创工程是习近平总书记亲自谋划、亲自部署、亲自推动的重大战略工程[1],是党中央强调和关注的重点,是我国实施创新驱动发展战略的有力保障和重要支撑。2021年 7月 21日教育部等六部门印发《关于推进教育新型基础设施建设构建高质量教育支撑体系的指导意见》,明确提出要“促进信息技术应用创新,推动数据中心,信息系统和办公终端的国产化改造。可见,探索信创人才培养模式,对于抢占信创产业发展先机,应对中美博弈斗争具有重要意义。

信创生态体系主要由硬件、基础软件和应用三部分构成。其中CPU和操作系统是信创生态体系的核心,然而中国一直处于“缺芯少魂”的局面,CPU 是“心”,是整个信息系统的运算和控制中心;操作系统是“魂”,是连接硬件和数据库、中间件、应用软件的纽带,是计算机生态环境的重要组成部分。Linux操作系统因其具有良好的可移植性以及可靠的安全性等特点,被广泛应用于政府、金融、电信和教育等关键领域,国产操作系统大多基于Linux内核开发,因此需要大量的Linux开发人员。鉴于Linux的重要性,各个高校纷纷开设Linux编程课程培养相关人才[2],成都信息工程大学开设的Linux操作系统编程课程对形成学生的职业能力、提高实践水平有重要的作用。

本文针对当前国内外的严峻形势,以培养应用型、技术型、创新型信创人才为核心,以国产化项目实际需求为主线开展现有Linux操作系统编程课程教学实验改革,将现有课程实验平台改为国产操作系统开源平台,从重构课程教学体系、教学内容及课程思政、产教融合项目设计等方面开展了改革探索。这对于融合课程思政教育,提高学生职业道德和使命感,促进产教融合,联合企业共同培育四川信创产业生态,助力解决我国“缺芯少魂”的卡脖子问题具有重要意义。

1 课程定位

Linux操作系统编程是计算机科学与技术专业的一门专业基础必修课,课程以开源的Linux操作系统为平台,在操作系统基本理论的指导下学习Linux操作系统编程的相关知识。通过该课程的学习,使学生在学习操作系统原理的基础上,掌握Linux操作系统下脚本编程、C语言编程相关的工具,如VI编辑器、Makefile文件、编译器、调试程序等,能够理解操作系统运行机制,能够进行脚本编程、多进程编程、设备驱动编程和网络编程。

该课程面向授课对象为本科大学三年级学生,该学生群体已经学习过C语言程序设计、计算机组成原理、操作系统原理等先导课程,具备一定的计算机学科基础,对计算机原理以及编程理论已有较深理解,而计算机作为一门注重实践能力的课程,因此本系列课程旨在通过课堂讲授与上机实验相结合的方式进一步锻炼学生实际动手能力,积累编程实践经验。但由于这些学生处于大三下学期,面临即将工作、考研、毕业等压力,存在时间安排不合理及学习积极性低等问题,因此在教学过程中会更注重提升教学的趣味性、引导学生自己思考提升其主动思考问题、动手实践解决问题的能力。

2 改革前课程现状

Linux 操作系统编程课程以开源的Linux操作系统为平台,在操作系统基本理论的指导下学习Linux操作系统编程的相关知识[3]。包括使用命令进行Linux操作的方法及基于Shell的编程、Linux操作系统下进行C 语言编程的方法及工具使用、Linux操作系统下进程间通信、设备驱动及网络通信的原理等。目前本课程教学主要存在以下几方面问题:

① 思政元素结合不足

本课程教学大纲、实验设计等均以传授专业知识为核心展开,而且目前使用的实验平台为国外Linux 操作系统,如CentOS、Ubuntu等,缺乏课程思政教育主线,导致思政目标不够清晰。

② 课程体系性不强

由于Linux操作系统涵盖内容广泛,知识点较为繁杂,导致课程安排的任务分散,学生只能按部就班地进行实践,无法融会贯通,常常“学完就忘”,难以真正地转化为自己的知识。

③ 实际工程应用不足

主要采用传统的教师为主导的教学模式,而且课程教学内容和案例侧重知识点传授与实践,面向工程实际需求考虑不足,导致学生解决Linux相关工程问题的能力不足,进而不能很好地满足企业对工程实践能力的需要。

3 课程改革的目标

在信创产业规模化落地的背景下,以《教育部关于一流本科课程建设的实施意见》为指导,根据Linux 操作系统编程课程和学生的实际情况,在教学改革中坚持知识和能力的有机结合,培养学生解决复杂问题的综合能力:

① 构建以国产操作系统为平台的项目式实践课程体系,完善教学内容。

② 积极引导学生主动学习和探究式学习,结合企业项目,突出项目化教学与实践,提高课程的教学质量。

③ 挖掘国产操作系统相关的思政元素,设计思政教育融入专业课程的路径与方法,提高学生实现国家富强、民族复兴的责任感与使命感。

4 课程改革的实施

根据Linux操作系统编程课程现存问题以及改革目标,本文在如图1所示的方面实施改革。

4.1 课程体系建设

Linux操作系统编程课程是C语言程序设计、操作系统原理、计算机组成原理以及计算机网络等基础先导课程的巩固和深化,同时也是后面云计算、大数据、网络安全和人工智能等相关课程的基础,本项目通过对OpenEuler、麒麟、统信UOS等国产操作系统知识架构进行深入调研,基于国产操作系统平台,结合课程教学目标与实际应用需求,针对现有课程知识点分散、体系性不强的问题,在把握好各门先导课程之间的内在联系和疏通计算机知识结构体系的前提下,构建以项目为驱动的实践课程体系[4],如图1 所示。基于国产化平台的新课程体系有助于提升教学内容的完整性和先进性,以老师为引导,突出学生的主体地位,在信创背景下,面向操作系统企业实际应用的项目式实践教学,通过项目实战方式将原有松散、抽象的知识点贯穿到一起,能够有效提升教学效果,充分调动学生学习实践的积极性和主动性,激发学生参与开发实践的热情,让学生明确认识到该课程在计算机专业中的地位和作用,加深学生对基于Linux的国产操作系统理论知识理解,培养学生基于Linux内核的国产操作系统应用和开发实践以及解决复杂工程问题的综合能力。

4.2 教学内容及课程思政案例设计

Linux操作系统编程不仅要发挥其在计算机基础课程中的综合特性,更要对教材及教学内容进行精选,注重多学科知识交叉与渗透,同时反映课程教学内容的发展趋势。根据国产操作系统知识体系结构,从整体上划分4个模块完成教学内容调整:Shell & C 语言编程基础模块、进程管理模块、设备驱动模块、网络通信模块,如表1所示。其中,Shell & C语言编程基础模块要求学生掌握基于国产操作系统平台的Linux 操作系统基本命令、Bash脚本编程基础知识、C语言相关开发工具使用,能够编写一定处理能力的Shell脚本,并能够编写满足特定需求的Makefile文件辅助C 语言项目开发;进程管理模块要求学生理解基于国产操作系统平台的Linux操作系统下进程间通信的机制,能够基于信号量和管道机制编写特定需求的C语言程序;设备驱动模块要求学生理解基于国产操作系统平台的Linux操作系统下设备驱动工作原理及管理方式,能够编写简单的字符设备和块设备驱动;网络通信模块要求理解基于国产操作系统平台的Linux基本的套接字概念,能够编写基于网络通信的C/S架构程序。4个模块均采用课堂讲授与项目实践的教学方式,教师在课堂讲授过程中力求做到重点突出,通过讲解各模块基本原理,引导学生掌握课程内容的内在关联性。对课堂教学内容进行大胆取舍,精讲重点课程内容,对于并不重要的内容坚决舍弃。项目实践部分通过与企业合作,面向企业实际需求设计相关实验以达到培养学生实际应用能力。

另一方面,在教学内容中进行课程思政案例设计。首先通过操作系统为我国被“卡脖子”关键技术的案例分享以及我国操作系统发展历史的介绍让学生体会到我国面临的严峻形势,激发学生的爱国情绪和民族责任感。其次,整个课程的知识体系始终围绕国产操作系统构建,引导学生熟悉国产操作系统使用方法的同时,引发其对于我国科研人员勤奋刻苦的工匠精神和锲而不舍的工作态度的深入思考和切身体会。

4.3 基于产教融合的项目案例设计

项目式教学以实践为导向[5],以教师为指导或引导,突出学生的学习主体地位,使学生能够真正掌握相关知识与技能,本课程项目案例设计既包括了设备驱动、通信交互、日志分析等基础知识巩固与实践,同时关注于项目管理相关综合能力的培养,如图2所示。根据学生掌握的知识体系设置难度合理的完整项目,以项目为主线,学校老师与企业导师协作引导学生分析完成项目需要解决的若干问题,在完成项目过程中培养学生综合运用所学知识解决问题的能力。另一方面,通过与相关企业合作面向企业的实际需求进行项目设计,同时在完成项目过程中,引入实战化的项目开发流程与管理方法,引导学生从需求分析、项目设计、项目实施、项目测试验证分析等多个阶段逐步完成整个项目,能够进一步提高学生的实际应用开发水平,为后续工程实践课程奠定良好基础。

4.4 课程考核评价

原有课程结合实验结果报告以及期末研究报告的方式进行课程考核,这种方式主观性较高,考核标准模糊,不易量化,同时抄袭现象时有发生,很难考核学生是否真正掌握和灵活运用所学知识。为了突出考查学生的实践和综合素质,对原有考核方式加以改进,采用基于项目管理的任务考核方法,要求学生在学习掌握人机交互技术课程后,以组队的形式完成一个较为完整的人机交互系统的设计开发流程,包括软件开发的项目需求分析、系统概要设计、数据库及界面设计、系统详细设计和系统测试等阶段,以全面考核学生的Linux系统应用能力和程序开发能力。项目开发过程中每个学生承担不同的角色及分工,每个阶段均需生成相应的过程文档,最后以小组为单位完成项目答辩。

5 小结

本文以培养信创人才为核心,结合信创背景下Linux操作系统编程实践教学案例,开展基于国产化平台的课程改革。实施改革将初步形成以国产操作系统为平台的课程体系结构,完善教学大纲、教学内容及课件,凝练课程思政案例,促进产教融合,培养更多应用型、技术型、创新型信创人才[6]。实施改革需要综合学校实际情况、学生综合素质、企业岗位需要等多方面考虑,进而保证信创人才培养的质量。

课程中的信创理念能够与课程思政教育自然、有效地结合,可以推广应用到物联网工程、网络安全、软件工程、信息与计算科学、统计学等开设了Linux操作系统相关课程的专业当中,对学校进行思政教育起到积极的推动作用。基于国产操作系统的课程体系,可为信创产业其他领域如CPU、数据库、中间件、应用软件等电子信息及计算机技术相关课程开设提供借鉴示范,能够培养一批应用型、融合型的信创技术人才,为信创产业发展提供更好的产学融合环境,进而加快促进信创产业高质量发展。

经典小说推荐

杂志订阅