Cinsdikici's Diary

Assoc.Prof.Dr. Muhammed Cinsdikici

Archive for the ‘Prev: Ege University’ Category

UBI506 – Operating Systems Course

Posted by cinsdikici on March 3, 2016

Course Unit Title Operating Systems
Course Unit Code UBE 506
Course Time: Wednesday [18:00-21:00], Friday [9:30-12:00]
Course Room: UBE, Room 103
Level of Course Unit M.Sc.
Number of ECTS Credits Allocated 7,5
Theoretical 3
Semester Spring
Name of Lecturer(s) Asst. Prof. Dr.Muhammed Cinsdikici, cinsdikici@gmail.com, office phone: 3205
Mode of Delivery Face-To-Face
Language Turkish
Assistant Kaya Oğuz, kaya.oguz@ege.edu.tr, office phone: 3242
Prerequisities
Objectives of the Course The aim of this course is to introduce the theory and implementation of operating system concepts with emphasis on concepts on sample operating systems like Unix, Linux, Windows and show how the sharing resources.
Textbook 1. Silberschatz Galwin, Operating System Concepts, 9.th Edition, Wiley, 20142. Andrew S. Tanenbaum, Albert S.Woodhull, The Minix book: Operating Systems – Design and Implementation- (3.rd Edition),Prentice Hall, 2006
Learning Outcomes
  1. To conceive the components of operating systems.
  2. Ability to explain general working  principles of operating systems.
  3. Ability to compare the  kinds and properties of operating systems.
  4. To realize the problems about sharing resources of a computer system.
  5. Ability to conceive operating system’s services.
  6. Ability to explain the concepts of process, deadlock; process scheduling algorithms, memory management and file systems.
  7. Ability to investigate the resource sharing methods’ effects to a computer performance
  8. Ability to develop software which contains multithreaded architecture and is protected from deadlock
  9. Ability to give a presentation, explanation about specific subject related the operating systems by research deeply.
  10. Awareness of ethics problems about operating systems.
Course Contents Process, process communication, Scheduling Synchronization, memory management, virtual memory, paging, swapping, file systems, input-output security, protection, deadlock avoidance algorithms, Unix basic concepts, introduction to distributed systems.
Grading & Projects %15 HomeWorks + %30 MidTerm + %40 Final Exam + %15

Final Project Late submission of the homeworks and projects are not going to be accepted. 

The assessment principals are;

————————————-

On time submission are scored as max.100/100

One week late submissions are scored as max. 80/100

Two weeks late submissions are scored as max. 60/100Others are scored as 0.

Weekly Detailed Course Contents
WEEK NAME   SUBJECTS  
  Theoretical Slides Laboratory Suplementary Materials
1 Introduction Definition of operating system, basis components of an computer system, interrupt handling types, storage hierarchy, structure of an operating system, basis chapter abstracts: process management, memory management. Introduction Computer Pioneers HistoryCharles Babbages Difference MachineHuman’s OS
2 System Structures Operating system services, operating system interfaces  (GUI and CLI), system calls and relation with operating system, system programs, MS-DOS structure, Unix system structure, microkernel  system structure, Mac OS X and Solaris system structure, virtual machines. OS Structures Research Assignment History of GUI

MsDOS Source Codes

 

[Thnx to my student Muhammed Ali Sürücü for the following suplimentary materials]

System Calls on Linux with code sample

Linux System Call Quick Reference

 

3 Process Concept Process, process scheduling, process synchronization, interoperating processes, process communication, inter process synchronization on server-client  Processes Process Creation Lab on Linux OS
4 MultiThreaded Programming Threads, multi-thread model, POSIX threads (Pthread),  Windows XP threads, Linux and Java threads  Threads Java Thread Library Coding
5 Synchronization Process synchronization, critical section problem, Peterson’s solution, hardware-base synchronization, semaphores, classical synchronization problems, monitor concept. Process Synchronization Semaphore implementationCode assignment aboutJava threads
6 Process Scheduling CPU scheduling subjects: scheduling criterias, multi CPU scheduling, scheduling algorithms, real-time scheduling, thread scheduling, examples from operating systems, Java thread synchronization code example. CPU Scheduling[Previous Version of the  Slide]  Research for Queue Systems Customer Queueing SystemSimulating QueueSabarimala Virtual Queue System 🙂
7   Midterm    
8 Deadlocks Deadlock problem, deadlock prevention methods, avoidance methods from deadlock, deadlock recovery. Classical deadlock problems and solutions, sample codes Deadlock  Deadlock avoidance implementation OS DeadlockBankers AlgorithmDeadlock in traffic
9 Memory Management Strategies Memory management, swapping, contiguous allocation paging, segmentation, segmentation with paging. Memory Management LitterateurResearch  How CPU Works?Fetch/Decode/ExecutePage Tables
10 Virtual-Memory Management Virtual memory, paging on demand, process creation, page reallocation, frame replacement, Segmentation on demand, examples from operating systems. Virtual Memory Management Book Reading LRU Approaximation: Second Chance (!)

Clock & Second Chance Algorithm s Presentation

11 Mass Storage Structure Disk Structure, Disk Scheduling, Disk Management, Swap-Space management  Mass Storage Structure  Research on Disk Drives
12 File System Interface File system interface, file concept, file access, file sharing and file protection, file associating.  File System Interface  Linux/Win8 File Management System Information
13 File-Systems Implementation File systems implementation, Allocation methods, free space management  File Systems Implementation  FAT32/NTFS Info
14 Case Studies Linux Systems, Windows 7
15   Final Exam    

 

Recommended or Required Reading     2. Silberschatz Galwin, Operating System Concepts with JAVA, Wiley, 20041. Andrew S. Tanenbaum, Albert S.Woodhull, The Minix book: Operating Systems – Design and Implementation- (3.rd Edition),Prentice Hall, 20062. Silberschatz Galwin, Operating System Concepts with JAVA, Wiley, 2004

Read the rest of this entry »

Posted in Operating Systems | Leave a Comment »

UBI621 – Digital Image Processing

Posted by cinsdikici on September 11, 2014

Course Unit Title Digital Image Processing
Course Unit Code UBI 621
Course Time: Friday [09:00-12:00]
Course Room: UBE, Room 103
Level of Course Unit PhD
Number of ECTS Credits Allocated 7,5
Theoretical 3
Semester Fall
Lecturer Assoc. Prof. Dr.Muhammed Cinsdikici,
Contact Info cinsdikici@gmail.com, office phone: 3205
Mode of Delivery Face-To-Face
Language Turkish
Assistant
Prerequisities Matlab Coding, C# coding, Linear Algebra,  No prior knowledge of vision is assumed.
Objectives of the Course – to make the student identify image processing methods,- comprehend importance of using computer in image processing,- construct basic image implementations with MATLAB program packet- develop image processing algorithms.
Textbook(s)
  1. Computer Vision: A modern Approach (2nd edt), David A. Forsyth, Jean Ponce, Prentice Hall, ISBN: 978-0136085928, 2011
  2. Computer Vision: Algorithms and Applications , Richard Szeliski, ISBN: 978-1-84882-934-3, Springer, 2011
  3. Digital Image Processing 3rd Edition (DIP/3e), Rafael C. Gonzalez, Richard E. Woods, Prentice Hall, ISBN:978-0135052679, 2008.
  4. Practical Image and Video Processing, Oge Marques, Wiley, ISBN: 978-0470048153 ,2011
Learning Outcomes At the end of this course, a student should be able to:

  1. Calculate image histograms and gray-scale transformation for image enhancement, explain histogram equilazation method
  2. Identify filtering methods in spatial and frequency domains and develop algorithms
  3. Calculate 2-dimensional Fourier Transformation of an image; calculate and analyse 2-dimensional convolution and apply it for the filtering purpose
  4. Comprehend mathematical morphology fundamentals and apply them for image processing purposes
  5. Recall basic MATLAB instructions and functions for basic image processing operations
  6. Apply image processing algorithms for real life problems
  7. Have the motivation to propose new solutions for image processing problems
  8. Realize the advantages of MATLAB program packet in algorithm development and develop image processing algorithms in MATLAB environment
Course Contents Objectives of this course are; to make the student identify image processing methods, comprehend importance of using computer in image processing, construct basic image implementations with MATLAB program packet and develop image processing algorithms.
Grading & Projects %30 HomeWorks + %20 MidTerm + %20 Final Exam + %30 Final Project Late submission of the homeworks and projects are not going to be accepted. The assessment principals are;————————————-On time submission are scored as max.100/100One week late submissions are scored as max. 80/100Two weeks late submissions are scored as max. 60/100Others are scored as 0.

 

ekly Detailed Course Contents
WEEK NAME   SUBJECTS  
  Theoretical Slides Laboratory Suplementary Materials
1 Introduction /Fundementals  Image Representation, Image Reading/Writing, Indexing Images, Converting Image Classes  Research Allignment  PinHole Camera (Obscura)
2 Intensity Transformations & Spatial Filtering  Image Intensity Transformations, Histogram Processing, Equalization/Matching, Linear/NonLinear Filtering a. Lecture-2-Filtering_Derivative_Noise

 

b. Intensity Transformations

 

c1. Histogram Equalization

 

c2. Histogram Equalization with Step by Step Exp

Base Paper Definition + Literatur Searching  a. Histogram Equalization Open Matlab Code

 

b. Local Histogram Equalization Open Matlab Code

3 Edge Detectors Primitive Detectors, Marr Hilderith, Canny Edge Detectors  Lecture-3-EdgeDetection Hmw#1: Histogram Matching a.  Marr Hilderith MatlabCode_Mohamed Athiqb. Canny Edge Detector Code Explanationc. Canny Edge Detector with Javad. Canny Edge Detector Tutorial Pagee. Canny Edge Detector without Matlabs functions
4 Image Features  Harris Corners, SIFT Features, SURF FEatures a.Lecture-4-Harris Corner Detection_Interest Points

 

b. Lecture-5-SIFT

Hmw#2: Detecting Corners with Harris Operator  a. Harris Corner Detector Logic

 

b. Edge & Corner Detection Lecture

 

c. Original SIFT code

 

d. SIFT Tutorial by Utkarsh Sinhae. ASIFT Method

 

f. SIFT Matlab Code

5 Frequency Domain Processing  Fundemental Concepts, BandPass (Low, High, Specified Intervals) Filters, Fourier Transforms a.Chapter 5 – Fourier Transformb. FFT Tutorial Video

 

c. Fourier for Beginners.

Hmw#3: SIFT Feature detection  a. Fourier Series and Transformation – Part 2

 

b. Fourier Series and Transformation – Part 3

 

c. Fourier Series Simpler Explanation Part I

 

d. Fourier Series Simpler Explanation Part II

6 Image Restoration Adding Noise, Noise Characteristics, Noise Filtering, Wiener Filtering, Geometric Transformations
7   Midterm    
8 Color Image Processing  Color Spaces (RGB, HSI, HSV, Lab)
9 Wavelet  Wavelet Transform, Inverse Wavelet
10 Image Compression  Huffman Codes (Encoding/Decoding), Color Compression, JPEG Compression
11 Morphological Image Procesing  Dilation, Erosion, Opening, Closing, Mophological Reconstruction
12 Image Segmentation  Point/Line/Edge Detection, Hough Transform, Thresholding, Region-Based Segmentation
13 Object Recognition  Distance Measure, Shape/Pattern Matching
14 Case Studies
15   Final Exam    

 

Additional  Reading     Video & Image Processing Tutorial Using C#/VS.Net, http://www.cogitance.com/files/videoprocessing/videoprocessing.htm

Read the rest of this entry »

Posted in Image Processing | Leave a Comment »

UBI 544 – Distributed Systems

Posted by cinsdikici on February 3, 2013

Course Time:

Wednesday, 09:30-12:00

Place:

UBE, Room 103

Instructor:

Assoc.Prof.Dr.Muhammed G. Cinsdikici, cinsdikici@gmail.com

Office Hours:

Wednesday, 13.30-15.30

Office Phone:

3205

Assistant:

Elif Acar Haytaoglu, elifacar101@yahoo.com

Office Phone:

3238

Platforms:  dissys@googlegroups.com

Description:

Overview of Operating Systems, Process Synchronization and Deadlocks, Threads and Thread Synchronization, Synchronization In Distributed Systems, Management of Time: Logical Clocks, Vector Clocks, Global States, Termination Detection. Distributed Mutual Exclusion: Central Algorithms, Lamport’s Distributed Algorithm, Token Based and Heuristic Algorithms. Distributed Deadlock Detection: Centralized and Distributed Algorithms, Election Algorithms, Agreement Protocols : Byzantine Agreement, Dynamic Scheduling in Distributed Systems, Static Scheduling in Distributed Systems, Distributed File Systems, Fault Tolerance in Distributed Systems, Distributed Real-Time Systems.

Prerequisites:

Operating Systems and Network Programing graduate/undergraduate level.

Textbooks:

1.** Advanced Concepts in Operating System, Mukesh Singhall and Niranjan Shivaratri, McGraw-Hill, 1994.2.** Distributed Computing: Principles, Algorithms, and Systems, Ajay D. Kshemkalyani, Chicago Mukesh Singhal, Cambridge Press, 2008, ISBN-13: 97805218763463.* Distributed Systems: Principles and Paradigms 2/E, Andrew S. Tanenbaum, Maarten van Steen, Prentice-Hall, 20084. Advanced .Net Remoting (C# Edition), Ingo Rammer & Mario Szpuszta, Apress, 2001.

5. InterProcess Communications in LINUX, John Shapley Gray, Prentice Hall, 2003

Bookstore Info –> http://pandora.com.tr

Projects

All Projects are due at the beginning of class. Due dates for projects will be announced at least a week ahead of time. No late submission will be accepted!.

Tests:

Students will have one final exam. Students will be tested on all material covered from lectures and text. Exams will test student’s ability of solving problems and understanding of concepts.

Grading:

 %15 Hmwrks + %15 Final Project + %30 MidTerm Exam + %40 Final Exam

Late Submission:

Late submission of projects will not be accepted.

Course Topics:

Lectures: Lecture01 – Introduction / Definition / Concepts

* Expanded by Paul Barry and Muhammed Cinsdikici chapter 01.ppt

* Tanenbaum Chapter 1-Introduction

* Tanenbaum Chapter 2-Architecture

* Kayhan_Erciye? CS633 03 chapter 1.ppt

* Prof.Dr.Stefan Leue (University of Freiburg)chapter 1.pdf

* Ihor Kuz (Urniversity_of_new_south_wales)chapter1.pdf

Lecture02 – Communication

* Cisco Systems OSI Model Presentation

* Expanded by Paul Barry and Muhammed Cinsdikici chapter 02.ppt

* Tanenbaum Chapter 4-Communication

* Prof.Dr.Stefan Leue (University of Freiburg)chapter 2.pdf

* Ihor Kuz (Urniversity_of_new_south_wales)chapter2.pdf

* Muhammed Cinsdikici MPI-Programming-Presentation.ppt

Lecture03 – Processes / Threads

* Threads

* Processes,

*Migration (University of Victoria Lecture Notes for Tanenbaum)

* Tanenbaum Chapter 3-Threads

* Expanded by Paul Barry and Muhammed Cinsdikici chapter 03.ppt

Thread Synchronization Sample Codes

Lecture04 – RPC/RMI

* RPC.ppt,

* RPC_Programming.ppt,

* Advanced-Socket Programming.ppt

* Jhon Shapley Gray, “IPC on Linux”, Chapter RPC.

* Geylani-RMI-Presentation.ppt

* Geylani-RMI Sample Codes

Lecture05 – Naming

* Expanded by Paul Barry and Muhammed Cinsdikici chapter 04.ppt

* Tanenbaum Chapter 5-Naming

* Ihor Kuz (Urniversity_of_new_south_wales)chapter11.pdf

Lecture06 – Synchronization

* Expanded by Paul Barry and Muhammed Cinsdikici chapter 05.ppt

* Tanenbaum Chapter 6-Synchronization / Elections / Mutual Exclusion

* Kayhan_Erciye? CS633 03 chapter 4.ppt

* Prof.Dr.Stefan Leue (University of Freiburg)chapter 3.pdf

* Ihor Kuz (Urniversity_of_new_south_wales) Sync-Part I.pdf & Sync-Part II.pdf

* Clocks (University of Victoria Lecture Notes for Tanenbaum)

* Supper-Clocks-Presentation-aos-5.ppt

* Clocks-Presentation-ch2.pdf

* MainClocks.htm

Lecture07 – Election Algorithms / Mutual Exclusion

* Mutual Exclusion-UVA-Comp.Science.pdf

* Tanenbaum Chapter 6-Synchronization / Elections / Mutual Exclusion

* Daniel Manasce-Sync in Dis.Systems.pdf

* Andrew Tanenbaum-7/e . chapter 06.ppt

* A Toolkit for the Simulation of Distributed Algorithms in Java.html

Lecture08 – Distributed Deadlock

* Distributed Deadlock

* Deadlocks in Distributed Systems

* Chandy-Misra-Haar’s Distributed Deadlock Detection

* Distributed DBMS Advanced Topics

Lecture09 – Agreement Protocols

* Agreement Protocols

* Byzantine Generals

* Consensus Concepts

Lecture10 –Fault Tolerance

 

Projects / Assignments:

Assignment 01 – Assignment#0Assignment 02 – Assignment#1Assignment 03 – Assignment#2Assignment 04 – Assignment#3Assignment 05 – Assignment#4Final Project – FINAL PROJECT

Posted in Distributed Systems | Leave a Comment »