2022-fall-computer-science

Практика

Разминка

  1. Создайте в своём репозитории 2022-polytech-%фамилия% директорию 05_computer_architecture
  2. Cоздайте пустой README.md файл
  3. Используя команду ps, напишите в README.md файл ответы на вопросы:
    • Какой процесс имеет наименьший идентификатор?
    • Какой идетификтор у вашего текущего shell-процесса?
    • Сколько всего запущено процессов?
  4. Добавьте к ответами команды, которыми были получены ответы
  5. Отправьте решение на GitHub

Задание

  1. Создайте в своём репозитории 2022-polytech-%фамилия% директорию 05_computer_architecture/meminfo
  2. Настройте cmake-проект
  3. Соберите программу, которая представлена ниже (для linux систем, проверить работу можно по ссылке) ```cpp #include #include

void show_meminfo() { char parameter[20]; int value; char unit[3];

std::ifstream in("/proc/meminfo", std::ios_base::in);
while(in.good())
{
    in >> parameter >> value >> unit;
    std::cout << parameter << " " << value << unit << std::endl;
} }

int main() { show_meminfo(); return 0; }

4. Прочитайте про работу с `ifstream`, `/proc` и `/proc/meminfo`
5. Измените программу так, чтобы она выводила размер занимаемой памяти в компьютере в ASCII-графике (пример ниже)

………. 0% |||||….. 50% |||||||… 70% |||||||||| 100%

7. Отправьте решение на GitHub


## Домашнее задание
1. Создайте в своём репозитории `2022-polytech-%фамилия%` директорию `05_computer_architecture/cpuinfo`
2. Настройте cmake-проект
3. Напишите программу, которая выводит загрузку процессора по данным из `/proc/stat` (пример первой строки файла приведён ниже)

cpu 669992823 69963647 341652106 64211934534 34415383 0 8102966 0 0 0 ``` Здесь числа обозначают время, проведённое процессором в разных состояниях. Четвёртое число обозначает время процессора без вычислений (состояние IDLE).

  1. Отправьте решение на GitHub

Комментарии