Changeset e43cdac in mainline for uspace/app/top/top.c


Ignore:
Timestamp:
2010-04-13T12:57:05Z (14 years ago)
Author:
Stanislav Kozina <stanislav.kozina@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
a307beb
Parents:
638927a
Message:

Removed all floating point computation from top utility.
Now all percentages are computed using fixed point.
FPU was emmiting exception 16 when storing float from FP register into the
memory and I really cannot figure out why:-(

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/top/top.c

    r638927a re43cdac  
    110110                uint64_t busy = new_data->cpus[i].busy_ticks - old_data->cpus[i].busy_ticks;
    111111                uint64_t sum = idle + busy;
    112                 new_data->cpu_perc[i].idle = (float)(idle * 100) / sum;
    113                 new_data->cpu_perc[i].busy = (float)(busy * 100) / sum;
     112                FRACTION_TO_FLOAT(new_data->cpu_perc[i].idle, idle * 100, sum);
     113                FRACTION_TO_FLOAT(new_data->cpu_perc[i].busy, busy * 100, sum);
    114114        }
    115115
     
    143143        new_data->task_perc = malloc(new_data->task_count * sizeof(task_perc_t));
    144144        for (i = 0; i < new_data->task_count; ++i) {
    145                 new_data->task_perc[i].mem = (float)(new_data->taskinfos[i].virt_mem * 100) / mem_total;
    146                 new_data->task_perc[i].ucycles = (float)(ucycles_diff[i] * 100) / ucycles_total;
    147                 new_data->task_perc[i].kcycles = (float)(kcycles_diff[i] * 100) / kcycles_total;
     145                FRACTION_TO_FLOAT(new_data->task_perc[i].mem, new_data->taskinfos[i].virt_mem * 100, mem_total);
     146                FRACTION_TO_FLOAT(new_data->task_perc[i].ucycles, ucycles_diff[i] * 100, ucycles_total);
     147                FRACTION_TO_FLOAT(new_data->task_perc[i].kcycles, kcycles_diff[i] * 100, kcycles_total);
    148148        }
    149149
Note: See TracChangeset for help on using the changeset viewer.