User Tools

Site Tools


sys:os

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sys:os [2023/05/12 08:42] – [Лабораторная 5. Разработка сетевой инфраструктуры] eugeneaisys:os [2025/02/06 14:22] (current) eugeneai
Line 8: Line 8:
  
   - Исследование компилятора gcc, язык ассемблера. Связь процесса и операционной системы. Makefile, git.   - Исследование компилятора gcc, язык ассемблера. Связь процесса и операционной системы. Makefile, git.
-    * Нужно написать программу на С, С++, PASCAL/FPC и др. компилируемом языке, странслировать его в Assembler с разными опциями оптимизации <code> gcc -S -o <>.s <>.c -O[0123s]</code> +    * Нужно написать программу на С, С++, PASCAL/FPC и др. компилируемом языке, странслировать его в Assembler с разными опциями оптимизации <code> gcc -S -o <>.s <>.c [-O[0123s]] [-g[123]]</code> 
-    * Разобраться с одним из вариантов [оптимизации] ассемблерной программой (**добавить комментарии в сгенерированный ассемберный код**) - найти циклы, переменные и т.п.+    * Разобраться с одним из вариантов [оптимизации] ассемблерной программой (**добавить комментарии в сгенерированный ассемблерный код**) - найти циклы, переменные и т.п
 +    * Преобразовать программу в модульную, разработать Makefile.
   - Программу усовершенствовать: добавить параллельный процесс средствами Linux/Windows. Синхронизация доступа к общему ресурсу (файл, канал, pipe, очередь, mmap, smmem). Язык С или другой, но на С проще, есть куча примеров.   - Программу усовершенствовать: добавить параллельный процесс средствами Linux/Windows. Синхронизация доступа к общему ресурсу (файл, канал, pipe, очередь, mmap, smmem). Язык С или другой, но на С проще, есть куча примеров.
 +
 +==== Варианты лабораторных работ (реализуемая функция) ====
 +
 +  - вычисление 
 +    - факториала, чисел Фибоначчи, функции Аккермана, ...
 +    - определенного интеграла численным методом,
 +    - сходящегося ряда для известных функций (sin, cos, exp, ....);
 +  - реализация численного метода
 +    - дифференцирования,
 +    - решения трансцендентного уравнения (методы Ньютона, Рыбакова, деления отрезка пополам, золотого сечения, простых итераций, ...),
 +    - решения задачи Коши;
 +  - реализация алгоритма
 +    - Бразенхема (рисование прямой, окружности, общего вида).
 +
  
 ==== Лабораторная 2 - Установка Linux (развертка, bootstraping) ====  ==== Лабораторная 2 - Установка Linux (развертка, bootstraping) ==== 
Line 56: Line 71:
  
  
-Оценка = количество сданных лаб, минимум 4 (1234, тройки мне нужны). 😉+Оценка = количество сданных лаб + 1. 😉
 Кому трудно - делайте вдвоем. Кому трудно - делайте вдвоем.
  
-Для 4 и 5 лабораторных можно дописать мой компилятор oberon7 (на стадии обновления исходников). https://github.com/eugeneai/Java-oberon-compiler, например, реализовать операции и тип bool, cardinal, В конце readme есть примеры задач. 
  
 === Доступ к Виртуальной машине === === Доступ к Виртуальной машине ===
sys/os.1683852176.txt.gz · Last modified: 2023/05/12 08:42 by eugeneai