UniMate AI

CSSE2310

计算机系统原理与编程

2 学分难度 超难

课程定位 CSSE2310(Computer Systems Principles and Programming)是 UQ 课程体系中兼顾理论与实践的一门超难课程,核心目标是把“会看懂”升级为“会分析、会实现、会解释”。课程通常承担承上启下作用:前接基础概念,后接更高阶专题或项目。对准备走软件、数据、工程或研究路径的同学来说,这类课程的价值不只在分数,更在于建立可迁移的方法框架和稳定交付能力。 技术栈与学习内容 学习内容通常覆盖该方向的关键概念、方法与工具链,并通过练习或作业落实到具体场景。常见会使用 Python、R、MATLAB、C/C++ 或课程指定软件(以官方课纲为准)。课程强调的不只是“得到答案”,还包括假设条件、步骤完整性、结果解释与复现性。也就是说,你需要同时训练知识准确度、实现质量和表达清晰度。 课程结构 课程一般按周推进,前段搭建概念框架,中段进入题型训练与案例应用,后段做综合整合与评估冲刺。考核常见组合为 Quiz/Lab、作业、报告和期末评估。评分不仅看正确率,也看分析逻辑、书写/代码规范与结论表达。多数同学真正拉开差距的阶段在中后期:是否能持续输出,而不是临近截止日突击。 适合人群 适合希望夯实底层能力、提升问题拆解与建模能力、并改善学术或工程表达的同学。若你计划继续修读高阶课程,或希望在实习与求职中提升“把事情做对并

Syllabus

每周大纲

  1. 1

    C 语言基础

    第1周主题:C 语言基础 内存布局、变量、基础语法。

  2. 2

    Pointers 与内存

    第2周主题:Pointers 与内存 指针算术、Manual Memory Management (malloc, free)。

  3. 3

    System Calls (I)

    第3周主题:System Calls (I) 文件描述符 (File Descriptors)、read, write, open 系统调用。

  4. 4

    System Calls (II)

    第4周主题:System Calls (II) 目录操作、文件权限、低级 I/O 缓冲区。

  5. 5

    Processes

    第5周主题:Processes fork, exec, wait 系统调用、进程生命周期。

  6. 6

    IPC (进程间通信)

    第6周主题:IPC (进程间通信) Pipes (匿名管道)、重定向、进程链。

  7. 7

    Signals

    第7周主题:Signals 信号捕获、处理程序、异步安全性。

  8. 8

    Sockets (网络)

    第8周主题:Sockets (网络) 网络协议、服务器编程、并发连接处理。

  9. 9

    Threads

    第9周主题:Threads Pthreads 库、多线程开发。

  10. 10

    Concurrency Control

    第10周主题:Concurrency Control Mutex (互斥锁)、Semaphores、原子操作。

  11. 11

    Assembly 基础

    第11周主题:Assembly 基础 x86/ARM Assembly 介绍、寄存器。

  12. 12

    性能优化

    第12周主题:性能优化 CPU 缓存、编译优化、内存对齐。

Assessment

考核结构

Assignment 1 (A1)

C 工具开发。通常是实现一个简单的 CLI 文本处理工具。

10%

Assignment 2 (A2)

Process & IPC。编写一个多进程的程序(如简单的 Shell)。

15%

Assignment 3 (A3)

Network Programming。开发一个并发的网络服务器。

15%

Assignment 4 (A4)

综合并发项目。通常是 A3 的增强版,加入更复杂的并发控制。

10%

Final ExamHurdle

期末考(分值极高且有 Hurdle,被视为「生死战」)。

必须 >40% 才能通过课程,分值占 50% 是最高权重

50%

Assignments

作业详情

Assignment 1 (A1): 基础 C 编程

处理命令行参数,读取文件内容并进行格式化输出。

要求:严禁出现内存泄漏 (Memory Leaks),必须用 Valgrind 检查。

⏱ 预计 20 小时

Assignment 2 (A2): 管道与并发

模拟一个带管道的 Shell 环境,或者实现多个子进程协同工作。

要求:禁止内存泄漏,子进程必须正确回收,使用 Valgrind 验证。

⏱ 预计 45 小时

Assignment 3 (A3): 网络服务器

编写一个基于 TCP Sockets 的服务器,支持多个客户端同时连接。

要求:必须支持多并发连接,协议解析必须完整正确,无内存泄漏。

⏱ 预计 50 小时

From Seniors

学长留下的

基础信息谁都查得到,真正值钱的是过来人的经验。

学姐说

比你早一年的学长留下的真实经验 —— ChatGPT 给不了。

这门课还没有学长经验,你可以是第一个 —— 注册后在课内分享。

往年考点 / 踩坑

这门课暂无往年考点记录。

毕业生去向(整体)

下面是匠人学院毕业生整体去过的公司分布(来自脱敏校友证言)。这是全平台的总体去向,不代表选这门课的人一定去这些公司。

统计自 313 份脱敏校友证言

Deloitte

6 位校友

岗位:Graduate Program · Graduate Consulting · Platform Engineer · Web developer · Platform engineer

Zerologix

4 位校友

岗位:Frontend Dev · junior frontend developer · Front-end Developer · Full Stack Developer

Servian

4 位校友

岗位:Full-stack Developer · Data Engineer · Consultant

关于这块数据,我们说实话

雇主墙来自脱敏毕业生证言(testimonials)的整体分布,无法关联到具体学员或其所选课程;仅作为毕业生去向的总体社会证明展示。

我们没有"某位学长选了这门课、后来进了哪家公司"这种可查询的个人去向档案 —— 校友证言是脱敏的,无法关联到具体的人或他选过的课。所以这里只给整体分布,不给个人路径,不编。