Skill Set Name: All

Topics Level Sub topics Skill Category No Code Share comment
Welcome to NEAOSS Wiki: Open Source Wiki for Learners and Students in North-East Asia

NEAOSS Wiki  is formed to intend to help learners and students to understand OSS.

Introduction to OSS II

Understanding situations on deployment and development of OSS.


  • Understanding OSS business models
  • Understanding type of OSS communities
  • Understanding difference in concept between Free Software and OSS
1-1-1-II
Introduction to OSS I

Understand the definition of open source software (OSS) and the concept of OSS, OSS development models.


  • Understanding the definitions of Open Source Software (OSS)
  • Understanding the concepts of OSS
  • Understanding the reasons for business focus on OSS
  • Understanding OSS development models
  • Understanding introduction to basic OSS licenses
1-1-1-I
Makefile II

 own projects by fluently writing Makefiles that can
 


  •  Primitives of Makefile (target, dependency, rule)
    • MACRO and .SUFFIXES
    • Pre-defined macro
    • $<, $@, $?
    • Make depend
  • Able to write Recursive Makefiles
    • Multiple and hierarchical directories
  • Able to write Makefiles for building and installing libraries
    • Static libraries
    • Shared libraries - -fPIC & -shared options in GCC
    • PATH and Environment variables
    • Linux commands – ar, ldconfig
    •  
9-2-1-II
Security functions and cryptography positioning I

Knowing the basic concepts and the big picture of security, knowing the risks in Open Source Software (OSS).


  •  Introduction of the basic concepts of information security and knowing the risks in Open Source Software.
  •   Knowing the basic knowledge and history of cryptography.
  •  Knowing which objectives of information security can be achieved with cryptography
    •  privacy or confidentiality
    •  data integrity
    •  authentication
    •  non-repudiation.
  •   Background on functions
  •  Basic terminology and concepts
  •  Knowing the classification, i.e. symmetric key encryption and asymmetric key encryption.
     
7-1-1-I
Outline of network security I

Knowing The basics of network security.


  • Introduction to network security
  • Background and Problem
  • Network security model
  • Attack process
  • Attack technology
  • Malicious code
  • Development
     
7-2-1-I
OS Security Concepts I

Understanding security threats and attacks on operating systems.
Understanding basic concepts on operating system security
Understanding related criteria on secure operating system
Understanding OS security related criteria
 


  • Understanding OS Security threats and attacks
    • virus & worms
    • Trojan horse
    • buffer overflow
    • logic bomb
    • covert channel
  • Understanding basic OS security concepts
    • reference monitor
    • trusted computing base
    • security function & security assurance
  • Understanding OS security related criteria
    • TCSEC
    • CC
    • Other criteria
7-3-1-I
Introduction to OSS II

Understanding situations on deployment and development of OSS


  •  Understanding OSS business models
  •  Understanding types of OSS communities
  •  Understanding the difference between Freeware and OSS
1-1-1-II
General introduction to the kernel of Linux I

Understanding the basic roles of OS and the history of OSes which have been developed to date. Knowing today's most popular OSes. Understanding the features of each OS.


  • Understanding the basic roles of OSes
  • Understanding the background to the deployment of an OS on a computer
  • Understanding the history of OSes
  • Understanding the introduction to today’s popular OSes
  • Understanding the type and features of OSes
  • Understanding the basics of system call
  • Understanding the basics of context switch
2-2-1-I
Architecture of Linux Kernel I

Understanding the basic architecture and functions of the Linux kernel, including process management, memory management, file systems, networking, and I/O processing.

2-4-1-I General introduction to the kernel of Linux
The basics of C I

Knowing the basic of C and its history.


  • Introduction history and features of C language
  • Comparison of C with other languages
  • Development cases using C
  • Flow of operations
  • C-based program development procedure
    •  Creation by an editor to compilation and execution of a program
    •  gcc command line basic options
      •  -o, -c, -l
    •  Basic concept of optimizations
      •   On
4-2-1-I
History of Script Languages I
  • History of Script Languages
  • Execute Environment/Programming-style
  • Features
  • Popular Script Languages: Perl/ PHP/ Python/ Ruby
  • Concept of LAMP Stack
4-4-1-I
Understanding Web architecture and Web 2.0 technology I

Describe the Web architecture overview and Web 2.0 trends. Also explain the social Web and Web 2.0 related components.


  • Web architecture overview
    •  Base Technology in the Web 1.0 era
    •  Basic Protocol for Web – HTTP/HTTPS, DNS Protocol
    •  CGI (Common Gateway Interface) Overview
  • Markup Language overview for Web Programming
    •   HTML
    •   XML
    •   CSS
  • Script Language overview for Web Programming
    •  Perl
    •  PHP
    •  Python
    •  Ruby
    •  JavaScript
  • Introduction to Web 2.0:
    • Web 2.0 trends overview
    • Social Web
    •  Folksnomy & Tagging
    •  Mashup
    • RSS and Atom
    • Google map API (Geospatial Web)
    • Semantic Web
    • Blog

 

4-6-1-I
Basic database theory I
  •  
    •  

 


  • The advantages of databases and the status of Database Management Systems (DBMSs)
    • Concurrent access
    • ntegrity
  • Basic concepts of using databases
    • OSS implementation
    • Outline of database structure
8-1-1-I
Basics of embedded computer systems I

Understanding the basic concept and substance of embedded computer systems. Describe the general architecture of hardware, software, and networks in embedded computer systems.


  • Basics of embedded computer system
  • Application of embedded computer systems
  • Architectures for embedded computer systems
  • Software architecture for embedded systems
  • Network architecture for embedded systems
  • Design methods for embedded computer systems
  • Needs and application for OSS embedded computer systems
  • Relations between embedded systems and OSS
  • Practical cases of OSS embedded OSS systems
  • Precautions to be taken in using OSS in embedded systems
9-1-1-I
Makefile II

To have ability to build own projects by fluently writing Makefiles that can build and install static and/or dynamic libraries.


  • Prerequisite:
    • 6-2-1-I : Development flow and tools
    • 6-2-2-I : Outlone of software development environment

 

  • Able to write Makefiles
    • Primitives of Makefile (target, dependency, rule)
    • MACRO and .SUFFIXES
    • Pre-defined macro
    • $<, $@, $?
    • Functions
    • Make depend
  • Able to write Recursive Makefiles
    • Multiple and hierarchical directories
  • Able to write Makefiles for building and installing libraries
    • Static libraries
    • Shared libraries - -fPIC & -shared options in GCC
    • PATH and Environment variables
    • Linux commands – ar, ldconfig

 

9-2-1-II
Linux kernel I

Understand the basics of Linux Architecture.

9-5-1-I
Linux kernel II

Use kernel primitive functions.


  • Use various kernel memory primitives including kmalloc() / kfree(), vmalloc() / vfree(), alloc_page() / free_page(), slab primitives
  • Understand the process control primitives such as schedule(), sleep() and wakeup()
  • Understand kobject
  • Use primitive functions for /proc, /sys file system
  • Use the macros and primitives to handle kernel lists and queues
  • Understand kernel timer data structures and primitives
9-5-1-II
History of UNIX and Linux I

Describe the history of UNIX from its start in the late 1960s, development into BSD, and contribution to the appearance and development of Linux. In connection with these topics, also address GNU projects and the Free Software Foundation (FSF).


  • Understanding the history of UNIX
  • Understanding the history of Linux
  • Understanding the history of GNU Projects
1-1-2-I
Communications forms and protocols I

Understanding network protocol primitives and components


Messages

  • packets, frames, datagrams, and cells
  • Message formatting

Network protocols
Network performance issue and measurement

  • Performance issue
  • Understanding performance measurements and units
3-1-2-I
Cryptography systems/common key cipher systems II

Introducing the symmetric key encryption, knowing its basic concepts, features, advantages and disadvantages, understanding its mechanisms


  • Introduction
  • Pseudorandom bits and sequences
  • Stream ciphers
    •  Feedback shift registers
    •  Stream ciphers based on LFSRs
    •  Other stream ciphers
  •  Block ciphers
    •  Classical ciphers and historical development
    •  DES and AES
    •  RC5, IDEA and other block ciphers
  •  Some known attacks

 

7-1-2-II
Virus characteristics and antivirus measures I

Understanding virus characteristics and antivirus


  • Virus overview
  • Virus characteristics
  • The kinds of viruses
    • Boot virus
    • File virus
    • Micro virus
    • Mutation virus
    • U disk virus
  • Network virus
    • Trojan
    • Worm
    • Mobile virus
       
7-2-2-I
Virus characteristics and antivirus measures II

Understanding antivirus


  • Anti-virus measures
    • Characteristics scan
    • Behavior audit
    • Active kernel defense
    • System patch
    • Other antivirus measures
       
7-2-2-II
OS Security Mechanisms I

Understanding basic security mechanisms in trusted operating systems, including identification & authentication, discretionary & mandatory access control, integrity protection, least privilege management, trusted path, trusted recovery, covert channel, object reuse, audit and so on.


  • Understanding basic security mechanisms in trusted operating systems, including:
    • identification & authentication
    • discretionary & mandatory access control
    • integrity protection
    • least privilege management
    • trusted path
    • trusted recovery
    • covert channel
    • object reuse
    • audit
       
7-3-2-I
OS Security Mechanisms II

Knowing how to use current security mechanisms in Linux systems.


  • Knowing how to use user identification and authentication commands and related files
    • Commands, e.g. useradd, userdel, usermod, password …
    • Files, e.g. /etc/passwd, etc/shadow, …
  • Knowing how to use discretionary access control commands
    • 9 bit mechanism, e.g. chmod, chown, … commands
    • ACL (Access Control List) mechanism, e.g. setfacl, chfacl, getfacl,… commands
  • Knowing how to use audit and log services and files, e.g. syslogd… , /etc/syslog.conf, ...
  • Knowing how to use network security related services and files, e.g. /etc/xinetd.d, /etc/services … , etc/hosts.allow, etc/hosts.deny, …
     
7-3-2-II
History of UNIX and I

Describe the history of UNIX from its start in the late 1960s, development into BSD, and contribution to the appearance and development of Linux. In connection with these topics, also address GNU projects and the Free Software Foundation (FSF).


  • Understanding the history of UNIX
  • Understanding the history of Linux
  • Understanding the history of GNU Projects
1-1-2-I
Architecture of Linux kernel I

Understanding the basic architecture and functions of the Linux kernel, including process management, memory management, file systems, networking, and I/O processing.


  • The architectural view of Linux kernel
  • Understanding basics of process management
  • Understanding basics of memory management
  • Understanding basics of file systems
  • Understanding basics of networking
  • Understanding basics of I/O processing
2-2-2-I
System Calls I

Understanding the system call function used for OS functions in ordinary applications. Understanding the position of the system call among other functions. Knowing the outline of the internal behavior of the OS when the system call function is activated.

2-4-2-I System calls
Fundamental structure of C I

Understanding elements of fundamental structure.


The basics of C
  • Configuration of programs, and basic grammar
  • Basic elements of C programs
    • Va r i able s
    • Data types
    • Operators
    • Control flow statements
    • Branch with condition.
    • Loop
    • Directives and preprocessor.
    • Prototype definitions.
    • Character string operation
    • Array
    • Functions
    • Pointers
    • Structures
4-2-2-I
Understanding Web architecture and Web 2.0 technology I

Describe the Web architecture overview and Web2.0 trends. Also explain the social Web and Web2.0 related components.


  • Web architecture overview
    •  Base Technology in Web 1.0 era
    •  Basic Protocol for Web – HTTP/HTTPS, DNS protocol
    •  CGI (Common Gateway Interface) Overview
  • Markup / Script Language overview for Web programming
    •  HTML
    •  XML
    •  CSS
    •  JavaScript
  • Introduction to Web 2.0:
  • Web 2.0 trends overview
  • Social Web
  • Folksnomy & Tagging
  • Mashup
  • RSS and Atom
  • Google map API (Geospatial Web)
  • Semantic Web
  • Blog
4-4-2-I