faculty
Adnan El-Nasan, PhD
Associate Teaching Professor
Computer & Information Science
Education
2003 | Rensselaer Polytechnic Institute | PhD in Computer and System Engineering |
1995 | Rochester Institute of Technology | MSc in Computer Engineering |
1988 | Jordan University of Science and Technology | BS in Electrical Engineering |
Teaching
- Operating Systems
- Computer Architecture
- Information Security
- Computer Networks
- Advanced Computer Systems
Programs
Programs
- Computer Science BS, BS/MS
- Computer Science Cybersecurity
- Computer Science Graduate Certificate
- Computer Science MS
- Mobile Applications Development
- Software Engineering
Courses
Principles of modern operating systems and their design. Scientific principles and engineering rules of operating systems are explored. Process and storage management subsystems are analyzed in detail. Protection and security are taken into account in design. An introduction to distributed operating systems is also presented. This is a design and project based course with a laboratory component.
Principles of modern operating systems and their design. Scientific principles and engineering rules of operating systems are explored. Process and storage management subsystems are analyzed in detail. Protection and security are taken into account in design. An introduction to distributed operating systems is also presented. This is a design and project based course with a laboratory component.
Principles of modern operating systems and their design. Scientific principles and engineering rules of operating systems are explored. Process and storage management subsystems are analyzed in detail. Protection and security are taken into account in design. An introduction to distributed operating systems is also presented. This is a design and project based course with a laboratory component.
Principles of modern operating systems and their design. Scientific principles and engineering rules of operating systems are explored. Process and storage management subsystems are analyzed in detail. Protection and security are taken into account in design. An introduction to distributed operating systems is also presented. This is a design and project based course with a laboratory component.
Principles of modern operating systems and their design. Scientific principles and engineering rules of operating systems are explored. Process and storage management subsystems are analyzed in detail. Protection and security are taken into account in design. An introduction to distributed operating systems is also presented. This is a design and project based course with a laboratory component.
Prerequisites: Completion of three core courses. Development of a detailed, significant project in computer science under the close supervision of a faculty member, perhaps as one member of a student team. This project may be a software implementation, a design effort, or a theoretical or practical written analysis. Project report with optional oral presentation must be evaluated by three faculty members including the project supervisor.
Prerequisite: Graduate standing; approval by advisor, graduate program director and department chairperson. Experiential learning in conjunction with an industrial or governmental agency project under the joint supervision of an outside sponsor and a faculty advisor. To be eligible, a student should have completed at least half of his/her program of study. A detailed project proposal must be prepared by the student for departmental approval prior to the start of the project. Upon completion, student must submit a report on the experience and make a short presentation to his/her graduate committee. This course may be used to satisfy one 3-credit graduate technical elective course.
Online and Continuing Education Courses
Introduction to data structures and fundamental algorithms. This course covers the design and implementation of dynamic data structures including linked list, queue, stack, heap, trees and graphs. This course also provides comprehensive coverage of fundamental groups of algorithms, including divide-and-conquer, dynamic programming, and greedy algorithms.
In depth treatment of current computer systems, with performance issues at the center of an analytical approach. The course explores operating system software and the interrelation between architecture and system software. Advanced topics of compiling, assembly, linking and loading of high-level language software are included. The course treats mechanisms of IO and the memory hierarchy, various features of traditional machines, advanced features of modern machines such as RISC and multi-processor machines, and file systems and networked and distributed systems such as inter- and intra-nets. Throughout, performance issues are at the center of an analytical approach.
Research
Research interests
- Operating System Optimization and Security
- Cybersecurity, Privacy, Forensics and Reverse Engineering
- Innovation and Commercialization in Emerging Economies