Advertisement
Guest User

Swapp

a guest
Aug 19th, 2019
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.73 KB | None | 0 0
  1. // Trabalho referente a materia de Sistemas Operacionais
  2. // Desenvolvido por : Gabrielle Freitas Rosa
  3. //                    Andre
  4. //
  5.  
  6. #include <iostream>
  7. #include <list>
  8.  
  9. using namespace std;
  10.  
  11. typedef struct{
  12.     int tam;
  13.     string nome;
  14. }memo;
  15.  
  16. int MAXMEMORY = 0;    // O MAX vai controlar ate quanto podemos preencher a lista.Logo, comeca com 0 pois a lista esta vazia;
  17.  
  18. list< pair<char, memo> > memory;
  19.  
  20. void carregar_programa(memo item){
  21.    if(memory.empty()){
  22.       memory.push_back( make_pair('o', item) );
  23.       MAXMEMORY+ = item.tam;  
  24.    }else{
  25.      if(MAXMEMORY < 100){  // se ainda for possivel incluir
  26.            for (list<pair<char, memo> >::iterator it=mylist.begin(); it != mylist.end(); ++it){
  27.                 if(memory(it).first == 'l' && memory(it).second >= item.tam){
  28.                     memory.push_back( make_pair('o', item) );
  29.                     MAXMEMORY+ = item.tam;
  30.                 }
  31.             }
  32.       }
  33.     }      
  34. }
  35.  
  36. int main(){
  37.  
  38.     int op, tama;
  39.     bool sair = true;    
  40.     string name;
  41.     memo particao;    
  42.  
  43.     while(sair){
  44.         cout << " Nosso sistema de mem贸ria permite" << endl;
  45.         cout << endl;
  46.         cout << " 1 - Carregar um programa na mem贸ria" << endl;
  47.         cout << " -----------------------------------" << endl;
  48.         cout << " 2 - Listar programas carregados na mem贸ria" << endl;
  49.         cout << " -----------------------------------" << endl;
  50.         cout << " 3 - Remover um programa da mem贸ria" << endl;
  51.         cout << " -----------------------------------" << endl;
  52.         cout << " 4 - Mostrar espa莽o total dispon铆vel na mem贸ria " << endl;        
  53.         cout << " -----------------------------------" << endl;
  54.         cout << " 5 - Mostrar estado atual da mem贸ria" << endl;    
  55.         cout << " -----------------------------------" << endl;
  56.         cout << " 6 - Compactar a mem贸ria" << endl;        
  57.         cout << " -----------------------------------" << endl;
  58.         cout << " 7 - Sair" << endl;
  59.        
  60.         cin >> op;
  61.    
  62.         switch (op){
  63.             case 1:
  64.                 cin >> name >> tama;
  65.                 particao.nome = name;
  66.                 particao.tam = tama;
  67.  
  68.                 carregar_programa(particao);
  69.                 break;
  70.             /*case 2:
  71.                 listar_programa();
  72.                 break;
  73.             case 3:
  74.                 remover_programa();
  75.                 break;
  76.             case 4:
  77.                 mostrar_espaco();
  78.                 break;
  79.             case 5:
  80.                 mostrar_memo();
  81.                 break;
  82.             case 6:
  83.                 compactar();
  84.                 break;*/
  85.             case 7:
  86.                 sair = false;
  87.                 break;
  88.             default:
  89.                 break;
  90.         }
  91.    
  92.     }
  93.     return 0;
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement