System Software

Major: Computer Engineering
Code of subject: 6.123.00.O.039
Credits: 6.00
Department: Electronic Computing Machines
Lecturer: PhD, Havano B.I.
Semester: 6 семестр
Mode of study: денна
Мета вивчення дисципліни: The discipline "System software" should provide systematized knowledge of the principles of organization of operating systems, their composition and structure software and provide the skills of analysis and development of system software component of computers, computer systems and networks.
Завдання: The study of an academic discipline involves the formation and development of students' competencies: general: • Ability to abstract thinking, analysis and synthesis. • Ability to learn and master modern knowledge. • Creativity, ability to system thinking. professional: • Ability to create system and application software for computer systems and networks. • Ability to systematically administer, use, adapt and operate existing information technologies and systems.
Learning outcomes: Know the latest technologies in the field of computer engineering. Be able to think systematically and apply creative abilities to the formation of new ideas.
Required prior and related subjects: Organization and functioning of computers Algorithmization and programming System programming
Summary of the subject: The Linux OS and its embedded and server applications are critical important components of today's key software infrastructure in decentralized and networked universe. Industry demand for experienced Linux developers is constantly growing. This course will provide the student with two things: a solid theoretical foundation and a practical one industry-specific information illustrated by code covering the area of ??the system Linux programming. This course deepens the art and science of systems programming Linux, including system architecture, virtual memory and process management, alarms, timers, multithreading, scheduling and file I/O, basic Linux kernel subsystems.
Опис: Conceptual basics of operating systems Basic principles of OS construction. Basic types of OS architectures. OS hardware support tools. The concept of OS resources, the main types resources. OS subsystems. Process management. Management resources. Data management. Application Programming Interface (API). Features of MS Windows, UNIX and Linux OS architectures Management of processes and flows Basic concepts of processes and flows. Ways to implement multithreading. States of processes and flows and conditions of transition from one state in another. Process control unit (PCB). Principles of process and flow planning. Types of planning. Planning strategies, Displaceable and non-displaceable multitasking. Planning algorithms. Interaction between threads and between processes. Basic principles and flow interaction problems. Competition, critical sections, blocking and dead ends. Basic mechanisms of thread synchronization: semaphores, mutexes, conditional variables, monitors, message queues, programmable channels, display memory. Peculiarities of implementation of management, planning and interaction between processes and threads in MS Windows, UNIX and Linux Resource management The main types of resources in the OS: RAM, processors, input-output devices. The main ways of organizing memory: block, segment, page. Virtual memory. Caching and paging pages. Dynamic memory allocation. Strategies working with memory. I/O device management. Tasks and organization of the input-output subsystem. Performance features input-output operations in kernel and user mode. Scheduling, buffering, synchronization, multi-threading, spooling, error handling. Features of the implementation of resource management in the MS Windows OS, UNIX and Linux: virtual memory, input-output facilities. Data management Concept of file and file system. Organization of information in file system. File system functions. Data hierarchy. File organization. File characteristics. Access methods from queues and basic access methods. Allocation and release of space in memory File descriptor. File performance and reliability systems Executable files. Principles of composition of executable files: static, dynamic. Structure of executable files. Implementation of file systems: VFS, FAT, NTFS. Operating systems in computer networks General means of supporting computer networks. Realization Internet protocol stacks. DSN naming system. Program socket interface. Peculiarities of implementation of computer network support in the OS MS Windows, UNIX and Linux Protection of information in operating systems The main tasks of ensuring security. Principles of authentication and access control. Local and network data security. Features of the implementation of information protection in the MS Windows OS, UNIX and Linux. Loading operating systems General principles of loading the OS. Downloading OS MS Windows and Linux.
Assessment methods and criteria: Assessment of students' knowledge in the discipline "System software" is carried out in accordance with the work curriculum in the form of a semester control, which is carried out at the end of the semester and includes the results of the current control of students' knowledge, which is assessed for the performance of laboratory work, and a control measure - the answer to the corresponding exam ticket. The control measure is a mandatory type of control and is conducted in written and oral form at the end of the semester. Current monitoring of lecture classes is carried out in order to identify the student's readiness for classes in the following forms: - a selective oral survey before the start of classes; - assessment of the student's activity in the course of classes, submitted proposals, original solutions, clarifications and definitions, additions to previous answers, etc. Control questions are divided into: a) test tasks - choose the correct answers; b) problematic – creation of problematic situations; c) issues of a reproductive nature - determination of practical significance.
Критерії оцінювання результатів навчання: Maximum score in points Current control (CC) Lab. works 30 Total for CC 30 Examination control written component 60 oral component 10 Total for discipline 100
Порядок та критерії виставляння балів та оцінок: 100-88 points - certified with an “excellent” grade - High level: the student demonstrates an in-depth mastery of the conceptual and categorical apparatus of the discipline, systematic knowledge, skills and abilities of their practical application. The mastered knowledge, skills and abilities provide the ability to independently formulate goals and organize learning activities, search and find solutions in non-standard, atypical educational and professional situations. The applicant demonstrates the ability to make generalizations based on critical analysis of factual material, ideas, theories and concepts, to formulate conclusions based on them. His/her activity is based on interest and motivation for self-development, continuous professional development, independent research activities, implemented with the support and guidance of the teacher. 87-71 points - certified with a grade of “good” - Sufficient level: involves mastery of the conceptual and categorical apparatus of the discipline at an advanced level, conscious use of knowledge, skills and abilities to reveal the essence of the issue. Possession of a partially structured set of knowledge provides the ability to apply it in familiar educational and professional situations. Aware of the specifics of tasks and learning situations, the student demonstrates the ability to search for and choose their solution according to the given sample, to argue for the use of a particular method of solving the problem. Their activities are based on interest and motivation for self-development and continuous professional development. 70-50 points - certified with a grade of “satisfactory” - Satisfactory level: outlines the mastery of the conceptual and categorical apparatus of the discipline at the average level, partial awareness of educational and professional tasks, problems and situations, knowledge of ways to solve typical problems and tasks. The applicant demonstrates an average level of skills and abilities to apply knowledge in practice, and solving problems requires assistance, support from a model. The basis of learning activities is situational and heuristic, dominated by motives of duty, unconscious use of opportunities for self-development. 49-00 points - certified with a grade of “unsatisfactory” - Unsatisfactory level: indicates an elementary mastery of the conceptual and categorical apparatus of the discipline, a general understanding of the content of the educational material, partial use of knowledge, skills and abilities. The basis of learning activities is situational and pragmatic interest.
Recommended books: 1. Garg, & Verma, G. (2017). Operating Systems: An Introduction. Mercury Learning & Information. 2. Panek. (2020). Windows operating system fundamentals (1st edition). Sybex. – 419 p. 3. David A. Solomon (2017). “Windows Internals”. 4. Габрусєв В.Ю. (2007). Основи операційних систем: ядро, процес, потік. – 96с. 5. Бондаренко М.Ф. Операційні системи: навч. посібник / М.Ф. Бондаренко, О.Г. Качко. – Харків: Компанія СМІТ, 2008. – 432 с. 6. Johnson M. Hart. Windows System Programming, 4th edition / Hart Johnson. – Addison-Wesley, 2010. – 656 p. 7. Thomas W. Doeppner. Operating Systems In Depth: Design and Programming / W. Thomas. – John Wiley & Sons, 2010. – 462 p. 8. Andrew S. Tanenbaum - Modern Operating Systems (2015)
Уніфікований додаток: Lviv Polytechnic National University ensures the realization of the right of persons with disabilities to obtain higher education. Inclusive educational services are provided by the Service of accessibility to learning opportunities "Without restrictions", the purpose of which is to provide permanent individual support for the educational process of students with disabilities and chronic diseases. An important tool for the implementation of the inclusive educational policy at the University is the Program for improving the qualifications of scientific and pedagogical workers and educational and support staff in the field of social inclusion and inclusive education. Contact at: St. Karpinsky, 2/4, 1st floor, room 112 E-mail: nolimits@lpnu.ua Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: The policy regarding the academic integrity of the participants of the educational process is formed on the basis of compliance with the principles of academic integrity, taking into account the norms "Regulations on academic integrity at the Lviv Polytechnic National University" (approved by the academic council of the university on June 20, 2017, protocol No. 35).

System Software (курсовий проєкт)

Major: Computer Engineering
Code of subject: 6.123.00.O.041
Credits: 3.00
Department: Electronic Computing Machines
Lecturer: PhD, Havano Bohdan
Semester: 6 семестр
Mode of study: денна
Мета вивчення дисципліни: The purpose of studying the educational discipline "System software" (course project) is to provide students with knowledge and practical skills in the development, testing, and maintenance of complex system software products, including operating systems, utilities, databases, network applications, and others.
Завдання: The study of an academic discipline involves the formation and development of students' competencies: general: • Ability to apply knowledge in practical situations. • Responsibility for the quality of the work performed. professional: • Ability to use modern methods and programming languages to develop algorithms and software. • The ability to present the obtained results in the form of presentations, scientific and technical reports. • The ability to argue the choice of methods for solving specialized problems, critically evaluate the obtained results, justify and defend the decisions made.
Learning outcomes: ЗН2 Have the skills of conducting experiments, collecting data and modeling in computer systems. УМ1 To be able to apply knowledge for identification, formulation and solution of technical problems of the specialty, using methods that are most suitable for achieving the set goals. УМ5 Be able to develop software for embedded and distributed applications, mobile and hybrid systems, calculate, operate equipment typical for the specialty. УМ11 To be able to evaluate the obtained results and justify the decisions made. AiB3 To perform work qualitatively and achieve the set goal in compliance with the requirements of professional ethics.
Required prior and related subjects: system software; computer architecture; algorithms and programming; systems programming.
Summary of the subject: The composition, structure and basic functions of the system software. Analysis of the components of operating systems. Details of the task decomposition and software components. Creating structural, functional and flowcharts algorithms. Development of code and testing of applications. Creating of documents for developed of software components.
Опис: The course project begins with the approval of the supervisor of the technical task. During the design process, he consults with the manager as needed and in connection with the issues that arise. It is recommended that the completion of the course project be evenly distributed over the entire semester and divided into the following stages: Preparatory stage. This stage forms the first section of the explanatory note to the course project. The student must understand the task set before him, familiarize himself with the recommended literature. At the same time, it is worth taking a critical approach to the study of sources: it is recommended to select the freshest, latest data and use the most authoritative sources. It is necessary to clearly present the purpose of the task being solved and to carefully analyze the requirements for its solution. At this stage, it is necessary to formulate the task, describe the input and output data, formulate the requirements for the functioning of the software, conduct a review of existing solutions, analyze technologies, tools, software libraries, and mathematical models that will form the basis of the program's operation. Designing. This stage forms the second section of the explanatory note to the course project. At this stage, the student must consider and describe various ways of solving the given problem, as well as develop algorithmic and mathematical support for the subsequent development of the program. The architecture of the software should be described, it should highlight: – a low-level component in the form of dynamic/static layout libraries, which will be developed in the C/C++ language; - presentation level - graphical user interface or command line interface, which can be implemented in any programming language that the student knows. At this stage, the student must present a detailed description (diagram) of the program's algorithms and data structures. Realization. This stage forms the third section of the explanatory note to the course project. At the beginning of this stage, the student must choose the most rational solution, during which it is necessary to perform the final development and debugging of the software. It is worth paying attention to the completeness, correctness and accuracy of documentation during the implementation of the course project, to the completeness of checking the correctness of the program. Project testing, development of user instructions, relevant documentation are integral components of software design. Design. The student is obliged to draw up an explanatory note and graphic material in accordance with the requirements for drawing up technical documentation, in accordance with current standards. These standards are described in section 5. The final stage. At this stage, coursework is defended. The student is obliged to present the supervisor with a final explanatory note to the course project no later than 5 days before the defense. Also, you need to present the source code of the program. The manager checks the project and gives instructions on corrections or additions that the student should consider and make in the project, after which he signs the explanatory note and the drawing. At this point, the course project is considered complete and can be submitted for defense.
Assessment methods and criteria: explanatory note to the course project, oral interrogation (100%).
Критерії оцінювання результатів навчання: The actual number of points for each of the parameters of the course project is determined by finding the percentage of the maximum number of points: - 100%, if the student is able to think creatively, summarize the studied material, uses theoretical provisions and specific parameters for this, clearly, comprehensively, deeply understands and knows the material and knows how to use it within the requirements of the course program, is able to conduct an interview with members of the commission, with answers to leading and additional questions, independently corrects some admitted inaccuracies, qualitatively and fully performed the calculation and graphic works included in the course project. - 80%, when there are some non-essential deficiencies according to the listed indicators, for example, the clarity and completeness of reports are not quite sufficient, there are minor deficiencies in calculations and design documentation, some carelessness in design, etc.; - 50%, if there are significant deficiencies according to the listed indicators, which the student was able to correct on his own; – 30%, if there are significant deficiencies according to the listed indicators that the student could not correct on his own, even if individual answers were good; - 0%, if the student showed misunderstanding and ignorance of the main content of the course project, made gross mistakes in the explanatory note, calculations, in the drawing documentation, could not correctly answer the commission's questions. According to the rating assessment, the assessment is determined according to the ECTS scale and the traditional national scale in accordance with the university's regulations.
Порядок та критерії виставляння балів та оцінок: 100-88 points - certified with an “excellent” grade - High level: the student demonstrates an in-depth mastery of the conceptual and categorical apparatus of the discipline, systematic knowledge, skills and abilities of their practical application. The mastered knowledge, skills and abilities provide the ability to independently formulate goals and organize learning activities, search and find solutions in non-standard, atypical educational and professional situations. The applicant demonstrates the ability to make generalizations based on critical analysis of factual material, ideas, theories and concepts, to formulate conclusions based on them. His/her activity is based on interest and motivation for self-development, continuous professional development, independent research activities, implemented with the support and guidance of the teacher. 87-71 points - certified with a grade of “good” - Sufficient level: involves mastery of the conceptual and categorical apparatus of the discipline at an advanced level, conscious use of knowledge, skills and abilities to reveal the essence of the issue. Possession of a partially structured set of knowledge provides the ability to apply it in familiar educational and professional situations. Aware of the specifics of tasks and learning situations, the student demonstrates the ability to search for and choose their solution according to the given sample, to argue for the use of a particular method of solving the problem. Their activities are based on interest and motivation for self-development and continuous professional development. 70-50 points - certified with a grade of “satisfactory” - Satisfactory level: outlines the mastery of the conceptual and categorical apparatus of the discipline at the average level, partial awareness of educational and professional tasks, problems and situations, knowledge of ways to solve typical problems and tasks. The applicant demonstrates an average level of skills and abilities to apply knowledge in practice, and solving problems requires assistance, support from a model. The basis of learning activities is situational and heuristic, dominated by motives of duty, unconscious use of opportunities for self-development. 49-00 points - certified with a grade of “unsatisfactory” - Unsatisfactory level: indicates an elementary mastery of the conceptual and categorical apparatus of the discipline, a general understanding of the content of the educational material, partial use of knowledge, skills and abilities. The basis of learning activities is situational and pragmatic interest.
Recommended books: 1. Garg, & Verma, G. (2017). Operating Systems: An Introduction. Mercury Learning & Information. 2. Panek. (2020). Windows operating system fundamentals (1st edition). Sybex. – 419 p. 3. David A. Solomon (2017). “Windows Internals”. 4. Габрусєв В.Ю. (2007). Основи операційних систем: ядро, процес, потік. – 96с. 5. Бондаренко М.Ф. Операційні системи: навч. посібник / М.Ф. Бондаренко, О.Г. Качко. – Харків: Компанія СМІТ, 2008. – 432 с. 6. Johnson M. Hart. Windows System Programming, 4th edition / Hart Johnson. – Addison-Wesley, 2010. – 656 p. 7. Thomas W. Doeppner. Operating Systems In Depth: Design and Programming / W. Thomas. – John Wiley & Sons, 2010. – 462 p. 8. Andrew S. Tanenbaum - Modern Operating Systems (2015)
Уніфікований додаток: Lviv Polytechnic National University ensures the realization of the right of persons with disabilities to obtain higher education. Inclusive educational services are provided by the Service of accessibility to learning opportunities "Without restrictions", the purpose of which is to provide permanent individual support for the educational process of students with disabilities and chronic diseases. An important tool for the implementation of the inclusive educational policy at the University is the Program for improving the qualifications of scientific and pedagogical workers and educational and support staff in the field of social inclusion and inclusive education. Contact at: St. Karpinsky, 2/4, 1st floor, room 112 E-mail: nolimits@lpnu.ua Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: The policy regarding the academic integrity of the participants of the educational process is formed on the basis of compliance with the principles of academic integrity, taking into account the norms "Regulations on academic integrity at the Lviv Polytechnic National University" (approved by the academic council of the university on June 20, 2017, protocol No. 35).