Course Objectives
Learning purposes : Learn the basic concepts of Unix system programming.
Course Objectives :
1. Understand and handle the mechanism of process creation and command execution.
2. Understand and handle how files and directories work.
3. Understand and handle standard I / O and pipelines.
4. Understand signal processing and be able to manage the process.
5. Understand the concept of job control and be able to use interprocess communication.
Rubric
| Excellent | Good | Acceptable | Not acceptable |
Achievement 1 | Understand the mechanism of process creation and command execution and handle it appropriately. | Understand and handle the mechanism of process creation and command execution. | Understand how processes are created and commands are executed. | It has not reached the left. |
Achievement 2 | Understand how files and directories work and handle them appropriately. | Understand and handle how files and directories work. | Understand how files and directories work. | It has not reached the left. |
Achievement 3 | Understand the mechanism of standard I / O and pipelines and handle them appropriately. | Understand and handle standard I / O and pipelines. | Understand how standard I / O and pipelines work. | It has not reached the left. |
Achievement 4 | Understand signal processing and manage processes appropriately. | Understand signal processing and manage processes. | Understand signal processing. | It has not reached the left. |
Achievement 5 | Understand the concept of job control and be able to use interprocess communication appropriately. | Understand the concept of job control and be able to use interprocess communication. | Understand the concept of job control. | It has not reached the left. |
Assigned Department Objectives
Teaching Method
Outline:
General or Specialized : Specialized
Field of learning : Information system programming network
Required, Elective, etc. : Must complete subjects
Foundational academic disciplines : Information science, information engineering and related fields / computer system related
Relationship with Educational Objectives :This class is equivalent to "(3) Acquire deep foundation knowledge of the major subject area"
Relationship with JABEE programs :The main goals of learning / education in this class are "(A) ,(A-2)".
Course outline : We will cover the basics of UNIX system programming using the C language used to build operating systems.
Style:
Course method : Due to the timetable, this course will be held in the second half of 2 credit hours. Explanations will be given by presenting slides and writing on the board. Also, impose relevant exercises to deepen understanding.
Grade evaluation method : Average of 2 regular exams (70%), exercises (30%). As a general rule, retests will not be conducted. Materials are allowed to be brought into the regular examination.
Notice:
Precautions on the enrollment : Students must take this class (no more than one-third of the required number of class hours missed) in order to complete the 5th year course.
Course advice: Thoroughly review the basics of programming you have learned so far.
Foundational subjects: Basic Programming(2nd year), Algorithms and Data Structures(3rd), Advanced Programming(4th)
Related subjects: Control Programming(5th year)
Attendance advice : The class will proceed while explaining the basics and capabilities of the operating system. In addition, we will explain how to use each function with examples, so be proactive in programming. Attendance will be confirmed at the beginning of the class, and if you enter the room within 25 minutes of the start of the class, you will be late, and if you are late 3 times, you will be absent from class.
Characteristics of Class / Division in Learning
Course Plan
|
|
|
Theme |
Goals |
2nd Semester |
3rd Quarter |
1st |
Guidance, Unix basics |
You can use the goals of this lesson and basic Unix commands.
|
2nd |
Basics of C programming (variables, functions, syntax) |
Explain the basics of C programming (variables, functions, syntax).
|
3rd |
Basics of C programming (operators, pointers, structures) |
Explain the basics of C programming (operators, pointers, structures).
|
4th |
Basics of C programming (library functions, prototype declarations, preprocessors) |
Explain the basics of C programming (library functions, prototype declarations, preprocessors).
|
5th |
Process spawning and command execution |
Explain the creation of processes and the execution of commands.
|
6th |
File system |
Explain the file system.
|
7th |
Standard I / O and pipeline |
Explain standard I / O and pipelines.
|
8th |
(2nd semester mid-term exam) |
|
4th Quarter |
9th |
Return and commentary of exam answers |
|
10th |
Processes and signals |
Explain processes and signals.
|
11th |
Interprocess communication using shared memory |
Explain interprocess communication using shared memory.
|
12th |
Interprocess communication using messages |
Explain interprocess communication using messages.
|
13th |
Interprocess communication using semaphores |
Explain interprocess communication using semaphores.
|
14th |
Thread |
Explain threads.
|
15th |
(2nd semester final exam) |
|
16th |
Return and commentary of exam answers |
|
Evaluation Method and Weight (%)
| Examination | Presentation | Mutual Evaluations between students | Behavior | Portfolio | Other | Total |
Subtotal | 70 | 0 | 0 | 0 | 30 | 0 | 100 |
Basic Proficiency | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Specialized Proficiency | 70 | 0 | 0 | 0 | 30 | 0 | 100 |
Cross Area Proficiency | 0 | 0 | 0 | 0 | 0 | 0 | 0 |