Noções básicas de ciência da computação | Vignesh Sekar | Skillshare

Velocidade de reprodução


  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

Noções básicas de ciência da computação

teacher avatar Vignesh Sekar

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

16 aulas (2 h 18 min)
    • 1. Como um computador

      11:05
    • 2. Como várias partes do computador trabalham juntos

      6:55
    • 3. Necessidade de sistemas operacionais do zero

      8:34
    • 4. Como os dispositivos de entrada e saída trabalham em juntos

      4:18
    • 5. Programa de e processo de processo

      9:23
    • 6. Grau de multiprogramação

      5:29
    • 7. Tipos de sistemas operacionais

      11:54
    • 8. Um ponto importante para observar

      1:31
    • 9. Bloco de controle do processo

      8:15
    • 10. Atributos de um processo

      14:13
    • 11. Tipos de agendamento de agendamento de agendamento de programação de contexto

      11:23
    • 12. Vários tempos de um processo

      11:28
    • 13. Tipos de algemas de programação

      8:37
    • 14. Algoritmo de programação de SJF

      9:21
    • 15. Exemplo 1

      9:18
    • 16. Exemplo 2

      5:57
  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

866

Estudantes

--

Projeto

Sobre este curso


Dominar os conceitos de sistemas operacionais é muito importante começar com a Ciência da is os sistemas operacionais são

Venha e se juntar em mim, eu garanta que você terá a melhor experiência de aprendizagem não apenas Sistemas de operação e também também o núcleo da ciência de computador em uma dimensão diferente.

Conheça seu professor

Teacher Profile Image

Vignesh Sekar

Professor

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%
Arquivo de avaliações

Em outubro de 2018, atualizamos nosso sistema de avaliações para melhorar a forma como coletamos feedback. Abaixo estão as avaliações escritas antes dessa atualização.

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui cursos curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. Como um computador: antes de ver o que um sistema operacional diz. Vamos primeiro ver o que é quando um sistema de computador. Está bem, está a ver? Sistema de computador não é nada. É uma combinação de software Harvin em dados que são usados para resolver o problema dos seres humanos. Está bem. Veja, como um usuário, ser desejado para problemas Salo. Está bem. Por exemplo, eu queria o acesso de uma página. É um problema. Eu queria acabar com isso. Pode fotografar. É um problema. OK, todos estes são problemas de seres humanos. Agora, para resolver esses problemas, usamos um sistema de computador. Ok, nós usamos isso. Certo? Mas você está dizendo que usamos um sistema de computador. Quero dizer, ser usado dispositivos de hardware, algum hardware faz ases. Alguns programas do sul primeiro não têm nada além de programas. Está bem. Software e programas significam um e o mesmo em dados. Está bem. Por exemplo, vamos supor que eu talvez quisesse ajudar a minha fotografia. OK, o que é um problema. A liderar a sua fotografia é um problema. Não, para resolver este problema, ser usado hardware mais difícil significa que usamos hardware. O computador pessoal, certo? Veja, por hardware, quero dizer, nós temos CPU. Ok? Veja, a parte mais importante da nossa unidade de processamento central de computador RCP. Ok, não é nada além de um pequeno chip. Ok? Ele é um barato saber o que as pessoas fazem é que vai buscar os programas. Está bem. Software de programação. Você sabe, eles estão bem. O programa, Os programas serão armazenados dentro da RAM. Nossa memória sabe o que o CPI vai fazer é buscar o programa da memória, e então vamos executá-lo. Está bem. Qualquer operação que você faz em seu computador está sendo feita por com a ajuda desligada do CP. OK, qualquer coisa que você vê pinturas para executar com instruções para ele. Veja, instrução não é nada além de uma parte de um programa. Ok, você pode pensar sobre isso como uma linha fora de um programa. As instruções de coleta também são chamadas de programa de venda. - Tudo bem. - Não. O principal, o principal funcional aqui para o sistema de computador é nada além de execução pela unidade central de processamento da CPU . Agora, isso é que é um hardware importante. As maneiras que usamos em nosso computador, a segunda maneira mais importante é nada além de uma memória. Certo, memória. Temos vários níveis de memória no nosso computador. Ok? Nós temos mordidas simplesmente dizendo que memória realmente significa RAM memória de acesso aleatório. Mas além disso, existem vários tipos de memória. Uma parte importante é, como eu disse, que é Haram. O segundo sistema de memória mais importante é o mais difícil. Também usamos outros sistemas de memória como caixas registradoras em tudo isso. Ok, veja, computadores funcionam com base no conceito de programa armazenado. Está bem. O que isso significa? Para resolver o problema dos seres humanos, escrevemos programas. Está bem. Agora, o que usamos? Armazenamos o programa, digamos a memória. Ok, vamos armazenar o programa dentro da memória. Agora, o que vai acontecer é esta unidade central de processamento da CPU. O chip terminará o programa linha por linha nossa instrução por instrução. E então ele vai executivo OK, que é assim que o problema dos seres humanos é resolvido hoje. Vê alguma coisa macia? Muito. Usamos hoje outro computador. Tem um programa no back-end. Está bem. Por exemplo, se você estiver usando, deve ele deve funcionar. - Não. A Microsoft deve ter retornado. Um programa para Emmitsburg nesse programa será roubado dentro do seu coração. Melhor Ok em. Lutou pela execução? O programa será movido do disco rígido. Isto também. Droga no que vai acontecer é CPU vai buscar o programa linha por linha. Mas programa focal escrito. William Esport, certo, Microsoft. Esse programa será o primeiro com a CPU linha por linha, e ele será executado como resultado fora que foram capazes de usar o software como estávamos usando hoje. Está bem. Por que estamos fazendo o programa da ceramista mais difícil? Diferentes. Isso é que a estimativa é um ponto importante que é discutido no próximo vídeo. Certo, o que será discutido no próximo vídeo. - Tudo bem. Não, como fora. - Não. Entenda que qualquer programa com CP quer executar tem que estar por cento dentro de seu AM. Certo, memória de acesso aleatório. Temos um disco rígido. Ok? É uma mordida importante. Agora, em uma briga, o programa será movido para o carneiro, e esta é a nossa CPU. O que o CPI fará é buscar o programa. Vamos supor que esta é a sua senha. Está bem. Este é um programa neste programa será armazenado dentro da RAM em um dos CPI Será que ele vai buscar o programa linha por linha e, em seguida, ele irá executá-lo como resultado, Up com muito capaz de usar o software como estávamos usando. Muito bem, tudo bem. Nadia, Jesse deve quando você pegar qualquer software, seja no Google Room, seja antes de comprar qualquer soft, data muito, deveria haver um programa que estaria sendo executado na parte de trás. E tudo bem, programa também é chamado. É o software. Não, nenhuma unidade central de processamento levará o programa bem em linha por linha de genital executado. Tão bem. Então, a coisa mais importante, que estará presente em vez de programa Grammys. Agora, além do programa, isso será algo chamado Data abençoado. Ok, eles acham que não dão dados. Nosso software é taxa inútil sem dados. O que você quer usar o software, por exemplo, por exemplo, se você é qualquer coisa pagar todos os dias, Se você estiver usando loja de fotos, que é um software que você precisa de algumas fotografias para Idiota. Ok, esses $4. Eles dizem que como dados Dia morre em nada além de qualquer informação, quaisquer dados brutos, por exemplo, você leva você pode apenas vídeo para um amigo advogado explicou que precisamos Então você tomar tudo isso basicamente dizer que não dados. OK, agora, uma combinação de uma combinação de software de hardware em dados são realmente usados em nossa epístola o problema dos seres humanos. Ok, isso é o que nosso sistema de computador está realmente fazendo. Algum problema de uso? Quer o sal dentro? Ignore computadores. Na verdade, escrevemos programas. Ok, tudo bem. Agora, uma pergunta que você pode fazer é por que você está usando esses muitos níveis fora da memória. Certo, ao invés de usar um Lee um membro, um sistema de memória, estamos usando Karam com força essa caixa registradora. Veja, na verdade, todos eles trazem apenas uma coisa para lá. Nada do que eles são. Na verdade, ou armazenando nossos dados dentro deles. Certo. Então? Então isso é CPU pode corrigi-los e, em seguida, executado. É o que estamos fazendo. - Não. Uma pergunta que você pode fazer é onde Usando esses muitos níveis de memória, a razão é muito simples. OK, eles estavam usando esses muitos níveis de memória porque cada sistema de memória tem o seu próprio. Nossas primeiras páginas também. É o partido do estado? Está bem. Veja, vindo do pé do dinheiro em caixas registradoras. Você pode ver isso um pouco mais tarde. Eu não penso muito nisso porque isso é realmente coberto no caso de organização de computadores e arquitetura. Certo, isso não é muito importante. Vindo dedo do pé operando os tocos. Você sabe que um sistema operacional diferente. Estes dois sistemas de memória, se você estiver realmente confortável, tudo bem? Saber o que isto seria diferente. Assim como Graham. E o disco rígido é muito simples. OK, o que está armazenado no disco rígido é realmente permanente. Ok, os dados, que são turnê no disco rígido, sua permanente. O que significa que se você armazenar alguns dados dentro do disco rígido, os dados permanecerão permanentes. Ok, mas esse não é o caso vindo para aumentar os dados com você armazenar Ingraham. Isso não garante que não significa que o encontro que eu sou sexualmente permanente assim que o outro sair. Ok, você sabe que você está usando um computador, e no caso de a data gelo dentro do RAM no caso de a energia desligar o seu guarda do computador desligar er da corrente, você sabe o que vai acontecer é que os dados se perder. Essa é a desvantagem do Graham. E isso é que ligado com disco rígido. Ok, tudo bem. Não, mas essa é uma. Isso é uma vantagem com Ram comparando o mais difícil. A coisa é acessar qualquer um dos programas. Nossos dados de Ram são realmente muito, muito, muito rápido comparando o disco rígido, que significa que o tempo de acesso fora do Ram é um 1.000.000 de vezes mais rápido que o de coração. Isto. Ok, veja, nenhum dos acessos. Uma instrução do disco rígido. Você não tira muito. Ok, dentro disso durante esse tempo, você pode ter acesso a 1.000.000 de instruções através da rampa. Certo, então posso dizer que um carneiro é mil vezes mais rápido que o de coração. Isso realmente faz 1.000.000 não é um número exato. Isso realmente varia. Com base na implementação, por exemplo, há um diferente no tamanho da RAM. tamanho certo fora do carneiro realmente decide sua velocidade. A guerra para maior o tempo que você tem, mais rápido será o seu computador. OK, por quê? Você vai entender isso uma vez que você entrar em conceito multi-programação. Ok, temos neste curso uma vez que você entrar em multi programa e você vai entender por que aumentar o tamanho da rampa é realmente aumentar a velocidade de quatro computador. Está bem, acho que sim. Que procurado com disco rígido são dados que você histórias permanentes que ventilado para Durant. O tempo da Srta. Access é muito, muito rápido. Portanto, nenhum V como um usuário quer no boldizsar Espontâneo. OK, nós não queremos. Nós não queremos que ambos decidam o que é que este achado inovador disse com ele até certo ponto. Mas o que queremos este tanto estas vantagens. Uma coisa acabou. Os dados devem ser permanentes. O segundo ponto é que precisamos de aceder aos dados de uma forma muito distante, muito rápida. Certo, então o que fazemos é que temos os dois sistemas de memória um, Sr. Graham. E este é o disco rígido. Não, todos os dados, o que é imediato. Está bem. Qualquer dado, você pega outro computador, definitivamente presente em, digamos o mais difícil. Ok, então ou é um programa. A nossa visita, nossos dados de visto ou o que quer que seja estará presente, digamos, o mais difícil. Agora que porque o problema é o tempo gasto pelos impostos CPU o estado, Eu vou levar muito lista muito tempo. Certo? Isso é que é um que eles disseram que foi com dureza. Não, não. O que? Isso não quer idade. O que fazemos é mover esses dados para dentro do RAM, certo? Para que toda a CPU possa acessar os dados. Muito rapidamente. Certo, então temos vantagens entediadas. Certo, ficamos entediados. As vantagens. Uma vantagem é que os dados que estavam armazenando sua permanência. Na verdade, um ponto importante que você precisa saber. Curioso Os dados são realmente copiar e colá-lo na rampa. Está bem. Não corta a pasta. É como uma cópia de carro. Certo, o que fazemos em nossos computadores. O que significa que se esta coisa tem isto tem de ser mais para salvar a droga. Uma cópia disso será criada e será movida para o carneiro. Certo, o que significa que isso estará presente. Tanto Ingraham como no disco rígido. Por quê? Porque no caso de os dados se perderem dentro do RAM, você destila por cento dentro do mais difícil. Ótima. Queremos dados permanentes. - Tudo bem. Então vamos conseguir ambas as vantagens. Uma coisa é muito capaz de acessar os dados. Nosso programa muito rapidamente era da Verdade, bem, menos. Somos capazes de ter ou dados permanentemente em, digamos, o disco rígido. Portanto, ambos os problemas foram resolvidos usando o tédio boda e muitos sistemas OK foram capazes de obter ambas as vantagens usando ambos os sistemas de memória. Então esta é a razão de usar vários níveis do meu medicamento parar. Certo, caixa registradora é um pouco mais complexa. Na verdade, você não precisa entender muito claramente. Entenda este assunto fora dos sistemas operacionais, ok? Ele é coberto principalmente em arquitetura de organização de computadores. Ok, tudo bem. 2. Como várias partes do computador trabalham juntos: finalmente ver, isso parece até agora. Vimos o quê? Este pode ser um sistema de computador. Certo? - Tudo bem. Deixe isso é, Hum isso é sobre o sistema de computador e ele está tendo CPU RAM no mais difícil. - Não. Algum problema? Você A Em nosso computador, seria definitivamente estar presente em, digamos, o mais difícil, certo? Seria, definitivamente, apresentando. Diga o mais difícil. Deixe esta questão. Temos um programa de alto nível, certo? Temos um programa de alto nível. Veja, programação de alto nível são os programas que estão certos. Por exemplo, Ver programa são programa Java. Há algum software ser usado como loja de fotos? O Google é cromado ou água? Nós dizemos o programa mais alto nível, certo? Não, este programa de alto nível não pode ser colocado diretamente. Disse o mais difícil, certo? Não podemos colocá-la. A razão está dizendo: Por que escrevemos os programas? Nós escrevemos programas porque esses programas têm que ser executados pela CPU em algum momento , certo? RCP e buscar o programa e, em seguida, ele será executado. Essa é a razão, muitos programas. Não, o problema aqui é que o nosso CP não será capaz de investir programa de alto nível direito, que significa que os programas escritos usando emprego CEO são por sua vez ou o que quer que seja. Ok, Esses programas não podem ser entendidos maneira, CPU ou CPU não pode. Melhor tempo um lee uma vez e zeros comércio só pode e ouvir por quaisquer números que é uma vez e zeros. Então o que fazemos é ser convertido outro programa fonte em algo chamado melhor tribunal máquina código máquina não é nada mais que uma vez e zero lado. O outro programa completo que você escrever será convertido em p. Um núcleo neste tribunal terá apenas uma vez e zeros direito. Isto é o que queremos dizer com “Mission Court”. Podemos também dizer que acoplamento XY trimestre tribunal executável são ainda programa de nível inferior. Eu mereço os vários nove nomes serem usados para se referir ao tribunal de máquinas. - Tudo bem. Então, qualquer programa que você tomar será convertido em tribunal de missão usando um programa chamado Best Compiler. Certo? Compelir. É também um software de programa que irá converter um programa de alto nível em seu tribunal de missão . Agora, uma vez que convertemos essa Louise ambulante, você coloca a quadra de máquina no disco rígido do computador, certo? Isso é o que eu disse que qualquer programa que você tomar estará apresentando disse o mais difícil e o mais importante, que o programa estará em código de máquina que o programa estará em código de máquina. - Tudo bem. Então nós temos um lugar no programa e dizer o mais difícil. Não me diga como a CPU realmente acessará um programa, certo? Vê algum programa? Esteja certo. Ele tem que ser executado pela CPU em algum momento. Agora segure CPI irá executar o programa. O ponto mais importante aqui. Você sabe, o assusta nossa infiltração. Você não pode acessar o mais difícil, diretamente, logo acima. Veja se você nunca será capaz de acessar o mais difícil Diretamente supervisionar vômito. Onde só pode acessar o ram diretamente. Certo? Isso sempre pode acontecer, mas eles nunca devem acontecer. Então o que fazemos é assumir que nossas CPUs solicitando uma segurança do programa Uma desculpa solicitando um programa que as pessoas sabem o que vamos fazer é procurar o programa ser um dentro do RAM. Vou procurar o superior de programação em Sitaram. Veja mais um ponto importante que você pode até mesmo ver no Bagram. Seu tamanho fora ram é muito pequeno em comparação com o tamanho do disco rígido escreve um auto de que é muito pequeno em comparação com o tamanho do coração. Isto mesmo se você tomar computador os rams entre algo em torno de quatro gigabytes no Max ele pode ser em algum lugar em torno de 16 gigabytes. Certo? Este é o tamanho da criação usada para a direita. Mas se você tomar duro é algo em torno de 500 Gp são mesmo para as pessoas nos dias de hoje, certo? O tamanho da dureza é muito, muito grande comparado com o tamanho fora da razão de ser difícil este caso muito barato, certo? Há Ram é muito, muito caro. Então esta é a razão pela qual a ciência fora da colheita é muito grande comparativa eu mesmo dos computadores de hoje. - Tudo bem. Então, uma coisa é certa, não podemos colocar todo o programa, uma vez que está certo, não podemos colocar todos os programas. Por quê? Porque o tamanho do disco rígido é muito grande. Sentimos como o mais difícil cheio de programas, Como você pode colocar todos os programas e dizer que não é possível? Certo. Então, como o tamanho do Ram é muito pequeno, não podemos colocar todos os programas em, digamos, a rampa. - Tudo bem. Vamos voltar a isto. Então, uma vez. Se cp quiser executar p one pré-programado, ele irá procurar no Ram engajado. O programa está presente na execução. Está tudo bem. Ele vai buscar o programa a partir da rampa. Em casos pureza presente dentro da CPU Ram se encaixa no programa. Seja um, teve a execução genital. Ok, vamos colocar Fetch linha por linha e então ele vai ser executivo. É simplesmente muito, muito menos tempo. Por quê? Porque aqui estão a CPU. É um Lee acessando o direito de carneiro. A fim de corrigir o programa que tem em casos o programa obtê-lo. P um não está presente no Ram CCP procurando pelo programa P um agora. No caso de P um não estar presente na rampa Nesse caso, uma coisa é com certeza ser um será definitivamente apresentar o artista agora. O que vamos fazer é May vai copiar o programa, ser um e, em seguida, vamos colocá-lo no rack. Certo? Por exemplo, não estaríamos presentes a não ser o raio de dentro. O mais difícil agora assistir fazer é se p um não está presente no Ram, vamos criar uma cópia off p one e, em seguida, vamos colocar ser um em ST em torno agora. Uma vez que isso tenha sido mais para a RAB. C p tomará o programa de sua direita AM. É assim que o nosso programa é geralmente acesso por engajamentos de CPU sempre, O programa está presente na rampa. Cp acessá-lo radicalmente. Nesse caso, leva muito menos tempo porque envolve apenas tempo de acesso Ram. Certo? Temos de aceder a um líder. Sabemos que o Karam é muito, muito rápido. Tudo bem, deixe-nos em casos. O programa não está apresentando o Ram. Nesse caso, precisamos acessar tanto disco rígido como Lillestrom Way porque precisamos tirar uma cópia. O programa de pessoas do mais difícil. Então estamos acessando o artista. Uma vez no lugar, o programa da Síndrome RCP vai ler o programa da rampa direita, então, efetivamente, estamos acessando os mais difíceis também. Se não Ram, por que o disco rígido do norte não é muito, muito lento? Ele tira muito deles, a fim de acessar o mais difícil. Então, no caso de o assento no programa CPUs agir pedindo está presente na rampa, vai levar muito menos tempo para a CPU acessar o programa enquanto engajar o programa não está presente na rampa. Vai levar muito tempo para a CPU acessar o programa, porque precisamos acessar tanto o disco rígido como. Vamos rampa. Sabemos que biscoitos duros muito, muito declive. Cidades finas são pontos importantes. Ahram é caro do que mais difícil, certo? Esta é a razão pela qual tiramos a ciência do Toby. Menor do que o mais difícil. Além disso, seu sou é muito, muito rápido comparando dureza fina. 3. Necessidade de sistemas operacionais do zero: Bem, até agora vimos que o tamanho do disco rígido será muito maior do que o tamanho da rampa. Ok? Agora vamos supor que apenas para uma suposição, nosso disco rígido pode conter 500 programas, ok? Da mesma forma, vamos supor que nossa RAM pode conter 15 programas. Por quê? Porque o tamanho de um Rama será geralmente com menor do que o tamanho do disco rígido. - Tudo bem. Agora, a partir deste 500 programas que, que estão presentes dentro do disco rígido, 50 programas devem ser copiados do disco rígido e, em seguida, modo para a RAM. Ok. São senhoras copiadas, assim como pasta de cópia. Ok, não é como aquela pasta, que fazemos no computador. Está bem? Este 50 programas que eu estou movendo para a RAM, também deve estar presente em digamos mesa Dar. Está bem. Assim eu copio os 50 programas e coloco na rampa. Agora a minha pergunta é, deste 500 programas, quais 50 programas devem ser copiados do disco rígido para a RAM? Essa é a questão, ok, veja mais adiante. O que podemos fazer é a melhor idéia é que podemos mover os 50 programas, que a CPU é mais provável de solicitar a seguir, certo? Por quê? Porque se a CPU está solicitando um programa que está presente dentro da RAM, leva muito menos tempo para a CPU acessá-lo. Mas no caso se o programa que CP está tentando acessar na RAM não está presente, quando no caso da CPU está tentando acessar um programa que não está presente na RAM. Ele vai levar muito tempo, porque precisamos copiar do disco rígido e, em seguida, colocá-lo na RAM e, em seguida, podemos ter que levá-lo de lá RAM. Vai levar muito tempo. Então devemos rezar para mover os 50 programas que a CPU pode solicitar próximo do disco rígido para a memória. Está bem? Mas o problema aqui é que nunca seremos capazes dizer qual programa a CPU estará solicitando em seguida. Ok, por quê? Porque qualquer CPU pode solicitar é altamente variável. Não podemos prever. Por exemplo, como um usuário, eu posso realmente, eu posso realmente abrir qualquer software como eu gosto, certo? Ninguém pode dizer que é que eu vou abrir-nos depois de uma pista é porque é um futuro. Da mesma forma, nossa CPU não pode prever. Nossa CPU pode sempre, LCP pode realmente pedir para qualquer programa, ok? Não há, nada como a nossa CPU deve solicitar este programa. Portanto, este é um futuro e não é possível para ninguém, ninguém para realmente deri-lo exatamente. Então, uma coisa que podemos fazer é fazer previsão ou podemos ir para, eu acho, ok, podemos simplesmente dizer que podemos simplesmente colocar algum programa do disco rígido para a memória, alguns 50 programas baseados em algum algoritmo ou alguma idéia. Certo, veja por que precisamos de um algoritmo para isso? Ver o que posso fazer. Por exemplo, há duas equipes que estão jogando uma partida, ok? E-mail e DB. Agora, eles vão jogar o jogo amanhã e você quer prever o vencedor, ok? Agora você pode prever o vencedor com base em vários algoritmos. Por exemplo, você pode pegar a história passada e ver qual equipe ganhou o maior número de partidas e dizer que ele será o vencedor amanhã. Está bem. Você poderia adivinhar que pode estar correto ou pode não estar correto. Dinheiro que saberás quando estiveres amanhã. Da mesma forma, podemos ir com outra equipe que perdeu mais número de vezes. Mas ainda assim você pode dizer que Amy está jogando em um terreno que ele faz um todos os jogos até agora. Então você pode dizer que o bico da equipe e ganhar o jogo. Ok, então há vários tipos de algoritmos. Então você pode vir acima com, você pode criar um monte de algoritmos dizendo que isso pode ser mão, isso pode acontecer, isso pode acontecer, ok? Então isso é só um palpite. Assim, da mesma forma aqui também podemos recriar qualquer 50 pro equity pode se mover. Você precisa de 50 programas do disco rígido para a memória com base em várias idéias dizendo que o programa que é menor em tamanho, talvez referido pela CPU no futuro. É apenas uma idéia ok, não precisa ser corretamente. Da mesma forma, os 50 programas que são os maiores insights, podem ser encaminhados pela CPU seguinte. E então eu preciso mover os 50 programas, que são, que são os maiores insights do disco rígido para a memória. Então eu posso ir para vários tipos de suposições. Então essa suposição é feita por algo chamado como sistemas operacionais. Está bem? Outros sistemas operacionais é um programa. É um enorme, é um grande programa. Vai ter muitas funções dentro dele, ok? Agora, uma das funções dentro dos sistemas operacionais manterá a lógica ou algoritmo, que dirá que, cadela, eu estou no caso de ele se deparar com uma situação tal que mais de um programa está tentando acessar o capturar a RAM aqui, mais do que um programa quer empinar, certo? Mas podemos avançar apenas alguns programas para a RAM. Agora, quais poucos programas devemos mover do disco rígido para embrulhar. Essa decisão está sendo tomada, sendo cuidada por uma das funções dos sistemas operacionais. Da mesma forma, isso pode surgir uma situação em que vamos supor que há mais de um programa na RAM. Vamos supor que existem dois programas na RAM que estão tentando acessar a CPU ao mesmo tempo. Ainda é definitivamente possível. Por quê? Porque eu poderia realmente abrir mais de um programa no meu computador. Nesse caso, o que vai acontecer? Ambos os programas tem que ser, tem que ser executado pela CPU. Agora, cabe à CPU decidir qual programa deve ser executado em seguida. Na verdade, a CPU não vai decidir. O CPU não sabe nada além de executar o programa. Agora cabe a nós decidir qual programa a CPU deve executar em seguida, certo, entre os dois programas que estão tentando acessar a CPU. Note, mais uma vez, para isso escrevemos outra função dentro do nosso sistema operacional que irá decidir qual entre esses dois processos deve capturar a CPU. Está bem? Então, o que realmente está acontecendo aqui é que não é nada além de alocação de resultados. Veja o que se entende por recurso. Qualquer coisa que esteja presente dentro de um computador não passa de um recurso. Por exemplo, CPR é um recurso, RAM é um recurso. O disco rígido é um recurso. Mouse, teclado, qualquer coisa impressa ou qualquer dispositivo que você possa levar em nosso computador. Podemos dizer isso como um recurso, está bem? Agora, no que está acontecendo aqui é mais de um programa está tentando acessar a CPU e depende de sua operação nas necessidades de IA. Esse sistema operacional está decidindo qual desses dois programas deve acessar a CPU usando seu programa C sistemas operacionais, é um programa. Agora, entre isso, existem várias funções, e cada função tem uma lógica. Esta função está tendo uma lógica dizendo que entre esses dois programas deve acessar a CPU. Da mesma forma, mesmo aqui estamos, já vimos que sempre que dois programas estão tentando acessar a RAM, o sistema operacional está decidindo qual programa deve se apossar da rampa, o que significa qual programa deve ser movido do disco rígido para a memória. Novamente, isso está sendo decidido pelos nossos sistemas operacionais. O que os sistemas operacionais geralmente estão fazendo é cuidar de algo chamado como a alocação de recursos. O que significa que se mais de um programa está tentando acessar um recurso. Agora o sistema operacional pode ter que dizer qual deve se apossar do recurso primeiro, ver, é claro, cada programa Bill. Cada programa definitivamente vai se apossar do recurso em algum momento no tempo. Isso é certo. Agora, entre eles, quais devem capturar o recurso primeiro, isso é tudo amortecido e que está sendo respondido por outros sistemas operacionais. Ok, tudo bem. Então, o ponto importante que você pode ter que observar aqui é o sistema operacional não é nada, mas um programa que atua como um alocador de recursos são um gerenciador de recursos. Está bem. Esse é o único ponto que, para isso, é o que eu queria explicar. Então eu fui para um monte de explicações apenas para dar uma idéia aproximada do que está acontecendo com o computador. Então, se você não é capaz de entender esses pontos, ainda está bem, certo? Para ter uma idéia áspera sobre isso, porque vamos ver todos esses conceitos de uma maneira muito mais detalhada. Está bem? Isto é só uma ideia difícil, está bem? Nada, nada que você deve ser capaz de entender exatamente. Então tentou ter uma idéia áspera sobre esses pontos. Vamos ver todos estes pontos de uma forma muito detalhada com muitos problemas de resolução, muitos problemas, ok? Você vai entender muito claramente. Tão bem. 4. Como os dispositivos de entrada e saída trabalham em juntos: Assim, um subprograma foi movido do disco rígido para a RAM. Quais são todas as coisas que este programa pode sofrer? Ou este programa estará em execução, este programa estará na RAM, e será executado pela CPU tomando linha por linha. Tais coisas ser dizer que a execução de teste, execução ou este programa que está na RAM. E nós temos Ival, certo, tal coisa que dizemos que eu sou o evento. Outra possibilidade é que este programa não está realizando. Execução, é que este programa não é executado. Agora, este programa está aguardando o evento IO. Nesse caso, este programa está realmente esperando para a CPU para executar R. Ele está esperando por algum evento IO, certo? Nesse caso, dizemos que este programa está realmente esperando algum evento acontecer. Ok? Então, em termos simples, eu posso dizer que c 1 eu quero dizer é que há algo chamado como tempo de resposta. Está bem. Eles não são Dongdaemun caldo. Primeiro, deixe-me escrever a fórmula e depois explicarei. Está bem? Doador em caldo de diamante, tempos de espera mais tempo de explosão mais tempo IO tempo. Está bem? Então, cada programa em algum momento será carregado na RAM, ok, vamos supor que, que é um programa chamado como P1, ok? Este programa é baixo. Vamos supor que este programa foi carregado a partir do disco rígido para a RAM às 01:00 da manhã. Está bem? Vejo 01:00 da manhã. E vamos supor que este programa tenha completado a execução às 03:00 da manhã, ok? Este programa completou a execução às três da manhã. E eu já lhe disse que uma vez que o programa tenha concluído sua execução, o programa será completamente removido da RAM. Ok, este programa será completamente removido da RAM. Agora, esta duração de tempo das 10h às três da manhã também é coordenada tempo de resposta. Ok. Agora, durante este tempo de reviravolta, quais são as coisas que este programa deveria ter sofrido? O que significa que durante este tempo de um nome para 3:00, este programa deve ter qualquer beta, que significa que, você teria esperado para algum evento acontecer. Este programa deve ter sido executado pela CPU de execução C e tempo de execução e tempo de intermitência, ambos são os mesmos. Está bem? Nós também podemos dizer que este tempo de execução como Burstein ambos são iguais, ok? São este outro programa deveria ter sofrido Ivo. Ok, então este tempo de resposta é uma combinação de espera dez mais rajada m mais m c. Na verdade, não podemos dizer qual entre a espera ou explosão I0 vai acontecer. Em que ordem? Ok, em que ordem isso vai acontecer. Um programa, uma vez que é carregado do disco rígido para Ram, ele pode sofrer qualquer ponderando-os por algum tempo ou deve ter sido executado por algum período de tempo. São este programa deveria ter sido submetido IO por algum período de tempo. Em que ordem isso acontece é realmente independente do programa. Para alguns programas, ele, para alguns programas a ordem será será a ordem será diferente de um programa para outro. Certo, isso é o que eu queria te dizer. Veja no caso de você não entender esta fórmula, você realmente não se preocupe porque nós estamos indo para z, muitos problemas vêm para este conceito. Está bem? Vamos ver algo chamado algoritmo de agendamento. Então, tudo bem, que vamos ver todo esse conceito. Ok, tudo bem. 5. Programa de e processo de processo: Então agora vamos ver a diferença entre um programa e um processo. Ok. Veja, nós já sabemos que qualquer programa em nosso computador será convertido em código de máquina, também chamado de núcleo LaTeX EE, e então ele será colocado dentro do disco rígido. Ok, nós já vimos isso. Agora vamos supor que o Google Chrome e MS Word são dois softwares que estão presentes em um computador, que significa dentro de um disco rígido em theta vontade computadores disco rígido no Google Chrome dot EXE e words.txt de Emma. Estes são os dois arquivos executáveis que estão presentes no nosso mais difícil, fino. Agora. Agora, chegando a isso, agora isso é chamado como um programa. Ok. Isto é, isto não é nada além de um software ou um programa. Agora o que você, o que nós realmente queremos dizer com seus processos? Veja dobrável, Eu clique em nós ou vamos supor que eu abri meu computador. Fiz login no meu computador e clique duas vezes no ícone do Google Chrome, que significa que abri o software Google Chrome. Ok, agora o que nossa CPU vai fazer é verificar se o programa do Google Chrome. Então nossa busca, o programa do Google Chrome em nossa rampa. Ok. Agora vamos supor que o programa não está disponível dentro da RAM. Então, como resultado disso, o que vai acontecer é que este programa pode ter que ser movido do disco rígido para a RAM. Ok, este programa feito foram movidos para a partir do disco rígido pode ser executado. Nós já vimos isso. Agora o que realmente vai acontecer é que, desde que eu tenho, eu cliquei no ícone do Google Chrome, que significa que eu abri o software Google chrome. Uma nova cópia deste Google Chrome será criada. Este programa, está bem? Uma nova cópia deste programa será criada no próprio disco rígido. Está bem? Este programa é chamado como um processo. Está bem? O programa C não é nada além de qualquer coisa que você digita. Por exemplo, a empresa Google desenvolveu software através de um programa. Isso é o que queremos dizer com um programa, então que está disponível como parlamento interno dxi em nosso disco rígido. Agora, sempre que este programa foi executado, se este programa foi aberto pelo meu computador, uma nova cópia deste programa será criada. E isto é o que queremos dizer com um processo. C, B pode abrir o Google Chrome em várias abas, certo? Por exemplo, eu posso usar o link aberto e aberto em uma nova janela. Eu posso, eu posso abrir para o Google Chrome Windows ao mesmo tempo certo? Agora o que vai acontecer é para este programa, no entanto, instâncias de programa crescido Google será criado dentro do disco rígido. Ok. Isto não é nada além de programa peres. Estes dois são processos que são criados para este programa. Está bem? Assim, para um único programa, vários processos podem ser criados. Está bem? Finalmente, agora o que vai acontecer? Estes dois programas serão movidos para a RAM, e então ele vai, ele vai, ele vai, ele vai executar, ele vai sofrer globo ocular isso, nós vimos isso OK, parece um programa normal. Isso também passará por todas essas coisas. - Tudo bem. Agora, para qualquer programa, temos visto até agora, ele passa por várias etapas, certo? Inicialmente ele começou como um programa fonte, então ele foi convertido em código de máquina. Agora a malha, então o código da máquina foi colocado dentro do disco rígido. E então ele me diz mais para a rampa. Agora, uma vez que ele faz, nós movemos para a RAM para ele pode sofrer ou i, o, R, ele pode ser, ele pode, ele pode ser executado pela CPU. Se ele pode, ele pode simplesmente permanecer na RAM esperando por algum evento acontecer, estão esperando por alguns, esperando por uma execução, executado pela CPU ou esperando por IO. Está bem? Foi isso que vimos até agora. Então, durante toda esta viagem. No entanto Programa passar por um programa ou um processo passa por várias etapas. Veja, na verdade, não há muita diferença entre um programa e um processo, embora seja dito esta explicação. Na maioria dos livros didáticos, eles usam o programa e o processo de forma intercambiável. Ok, tudo bem, mas ainda assim, é bom saber isso na verdade, ok, qual é a diferença entre programa e processo? Agora? - Tudo bem. Agora, este programa e este processo passam por várias etapas, certo? Vários estados. Agora dizemos que cada nó que nomeamos cada, cada um desses estados usando, usando essas coisas. Está bem? Por exemplo, sempre que clicamos no Software, por exemplo, sempre que abrimos o software Google chrome, este programa, este programa realmente criou esse processo, certo? Este programa realmente criou este processo. Agora dizemos que esse processo é um novo estado. Está bem? Esse processo está em novo estado porque esse processo está sendo recém-criado. - Tudo bem. Agora, em algum momento, Droga este programa, este processo será realmente movido para a RAM, certo? Porque o CBO pode realmente acessar um leads diretamente da RAM e não do disco rígido. Então, em algum momento, este processo tem que ser movido para a RAM e ser digamos, vamos supor que é este processo que o Google Chrome está agora presente dentro da rampa, está presente dentro dessa munição. Agora, dentro da RAM, já vimos que qualquer programa ou processo pode ser executado pela CPU. Porque eu posso ser executável e CPU são ele pode sofrer I0, R. Ele pode estar na RAM esperando por alguns eventos. Certo? Agora, no caso se o programa está dentro da RAM e não está executando Iwill, nem está sendo executado pela CPU. Mas este processo está à espera de algum evento acontecer. Nesse caso, podemos dizer que esse processo não está pronto, certo? O que significa que este processo está realmente pronto para execução, são para IO. Está bem? Este processo está realmente aguardando tanto por CPU são para executar I0. Então dizemos que este processo está em estado pronto. Então, até agora, vimos dois estados. Sempre que o processo do programa está sendo criado dentro do disco rígido, dissemos que o processo está em novo estado e sempre que o processo foi movido para a RAM. Mas não está executando Ivo, nem está executando execução, execução pela CPU. Nós dissemos que o processo não está pronto estado, tudo bem. Agora vamos incase se o processo está sendo executado pela CPU, tomando linha por linha, dizemos que o processo não está executando estado, que significa que o processo está sendo executado pela CPU, estão sendo executados pelo CPC ou executar e executar ambos são iguais, certo? Então dizemos que o processo é o estado em execução. Agora, no caso de haver um pequeno erro aqui, na verdade. Ok. Aqui, aqui há um pequeno erro, ok, não está bloqueado estado. É, na verdade, eu vou declarar. Vou declarar. Está bem? Então, no caso o processo estar na RAM e ele está realizando algum evento IO, você sabe o que um IPO significa, certo? Ou ler ou escrever a partir de dispositivos IO é o que dizemos que não faz i u. Então, se o processo está em, passando por Aibo, então nós dizemos que o processo está em, eu vou dizer, ok, tudo bem. Isso também é chamado como um estado bloqueado. Está bem? Então por que dizemos que este estado de bloco de status Ivo é nós, vamos ver isso, ok, nós movemos um quando estamos vendo realmente algoritmos de agendamento, vamos ver por que dizemos um processo em estado Iwo status bloqueado, ok, vamos ver isso um pouco mais tarde. Agora. Sabemos que uma vez que um processo conclui sua execução, o que significa que é, é completamente feito com tudo. Seria completamente removido da rampa, certo? Agora, uma vez que o processo tenha concluído sua execução, então dizemos que o processo está em estado encerrado. Novamente, uma vez que o processo atinge o estado encerrado, removeremos o processo da RAM completamente. - Tudo bem. Agora, há mais dois estados chamados suspender a data de lançamento e suspender o estado VT. Agora, no caso de eu dizer isso e explicar isso, explicar isso, você não será capaz de entender claramente. Então o que eu vou fazer é me deixar tomar um processo de água. Eu, deixe-me discutir mais alguns conceitos sobre o processo. E depois veremos estas duas coisas, está bem? Tal apostador anti-estado e suspender, estado de espera. - Tudo bem. 6. Grau de multiprogramação: Agora vamos ver o que faz um por grau de multiprogramação. Grau de multiprogramação. Grau de multiprogramação significa número máximo de processos que podem ser colocados na RAM em nosso computador. Isso é o que queremos dizer com o grau de multiprogramação. Escreva C, este B. No entanto rampa, vamos supor que nossa RAM pode ter no máximo três processos, o que significa C, nossa RAM está tendo alguma capacidade, ok? RAM Endeavor está tendo alguma capacidade. Vamos supor três GB ou 4GB ou o que quer que seja, OK. Agora, dentro deste espaço, isso pode ser apenas um número finito de processos pode ser colocado, certo? Por exemplo, vamos supor que psi é para fora Ramis 4GB. Ok? Agora, vamos assumir o tamanho de um único processo igual a, vamos supor quatro KB. Está bem? E vamos supor que não precisa ser sempre verdade. Mas apenas para este exemplo, vamos supor que todos os processos terão o mesmo tamanho, ok? Isso é uma suposição. Por favor, tome nota disso. Não precisa ser verdade sempre. Mas vamos, para este exemplo, supor que o tamanho de cada processo é o mesmo, ok? Agora o número de max, em seguida, o número, número máximo de processos que podem ser colocados em nossa RAM não é nada além de tamanho de RAM dividido pelo tamanho de um único processo, que não é nada, mas o tamanho I-frame é quatro GB, que eu posso escrevê-lo como dois poder 32 bytes divididos pelo tamanho de um único processo e eu acho que mas quatro KB tomamos e escrevê-lo como Cooper para L bytes. Está bem? Então totalmente eu posso ter bytes e bits serão cancelados. Então eu vou ter, eu posso ter no máximo dois poder 20 processos em digamos minha RAM. Então o que eu posso dizer é que o grau de multiprogramação em nosso computador é dois poder 20. Eu posso ter no máximo duas portas no meu, no máximo duas portas 20 processos no meu Abram. Ok, isso é o que eu quero dizer com grau de multiprogramação. Agora você pode ter uma dúvida sobre o que se entende por GB KB. Como eu calculei isso e tudo isso de novo? Então, para isso, vamos ver o que, vamos ver sobre o que se entende por GB. Ok, C, um K, b igual a dois potência dez bytes. E um MB é igual a dois power 20 bytes. Um GB igual a 2,30 bytes, um db igual a dois por 40 bytes e um byte é oito bits. Agora estes quatro, a fim de calcular isto, eu posso converter este 4GB em bytes, ok? Vai torná-lo muito mais fácil. Por exemplo, para DBA pode gravá-lo como 11 GB igual a dois de energia 30 bytes. Então, quatro em dois por 30 bytes, certo? Este quatro, Eu posso escrevê-lo como 2pi sobre dois em dois poder 30 bytes. Está bem? Agora isso, eu posso escrevê-lo como dois poderes 32 bytes. Foi assim que consegui esta porta 32 bytes, está bem? Da mesma forma, este quatro KB, Eu posso escrevê-lo como um KB é igual a dois power dez bytes novamente. Então eu posso escrever como quatro em dois por dez bytes, C, quatro KB. Eu estou escrevendo como quatro em dois power dez bytes, porque um KB é igual a dois furo dez bytes, ok? Um KB é igual a dois power dez bytes. Agora isso pode ser escrito como, este quatro pode ser escrito como dois ao quadrado. E então dois quadrados em dois poder dez, que não é nada além de dois poder 12 bytes, certo? Isto não é nada. Isto é o que eu tenho Galba IO escrito como TOPO. Desta forma eu tenho escrito faz para a porta 12 bytes, certo? Dividendo de duas portas 32 um óleo de duas portas não é nada além de dois poder 20. Ok, veja, vamos ver sobre isso. Kb, MB, GB e tudo isso um pouco mais tarde. Ok, vamos discutir muitos problemas, mas nós vemos sobre gerenciamento de memória, ok? Agora só para ajustar para realmente explicar o conceito de grau de multiprogramação, eu tenho tomado o pequeno problema, ok? Grau de multiprogramação não é nada, mas o número máximo de processos que podem estar presentes na RAM para o computador, bem. 7. Tipos de sistemas operacionais: Tudo bem. Agora vamos ver o que são, quais são os vários tipos de sistemas operacionais que temos, OK. Bem, uma coisa é nada além de sistema operacional em lote. sistema operacional em lote não é realmente usado hoje. Está sendo usado há muito tempo, certo? Sistema operacional em lote significa no grau de multiprogramação é sempre um. Certo, esse é o sistema operacional em lote. Será sempre ter o grau de multiprogramação s1, que significa no máximo, que pode ser um, apenas um processo que pode estar presente dentro da RAM. O que, o que queremos dizer com isso? C, D, B, realmente colocando um processo do disco rígido na RAM, certo? E então CB irá executá-lo. Agora, o que vamos estar normalmente fazendo é o que temos visto até agora, o que vamos fazer é que teremos mais de um processo em salvar esse aplicativo, certo? Eu não expliquei isso até agora. Deixe-me explicar agora. Normalmente o que teremos é que teremos mais de um processo como por exemplo, p1, p2 e p3. Ao ter isto, vou ter muitas vantagens. Por quê? Por exemplo, vamos supor que p1 está sendo executado pela CPU, OK, p1 está sendo executado pela CPU. Agora P2, vamos supor que P2 precisa de mim, ok? Agora P2 pode passar por I0 de alguma de nossa soma, o que significa que ele pode ler dados de alguns dispositivos IO, alguns dispositivos IO, ok? Agora, e P3, P1 está feito. P3 pode continuar com o CP, o que significa que o que eu estou realmente fazendo é que ambos os dispositivos de CPU e E/S funcionem em paralelo, certo? Considerando que vamos supor que se eu restringir meu computador para dizer que eu posso ter no máximo quando apenas um processo que pode estar presente na RAM. Certo, então o que eu vou estar fazendo, eu vou colocar um processo dentro da RAM, um só após a conclusão deste processo, eu vou buscar esse próximo processo do disco rígido. Essa desvantagem com isso é vamos assumir que P1 precisa que eu vou. Agora, sempre que P1 estiver fazendo IO, nossa CPU ficará ociosa, certo? execução e o trabalho não podem ser feitos ao mesmo tempo para um determinado processo. Podemos ser feitos para dois processadores, que significa que quando um processo está sendo executado pela CPU, podemos realmente executar o mal para outro processo que pode ser feito ok. Mas aqui, uma vez que temos apenas um processo na RAM, um ano após a conclusão deste processo pode ser capaz de tomar o próximo processo do disco rígido. Ok, agora por causa disso, nós vamos ter menos eficiência, eficiência CP eficiente, ok? A eficiência Cp não é nada além de útil. Estou fora da CPU. Dividendo pago o tempo total da CPU. que significa que do tempo total que você tem, quanto tempo você realmente está usando a CPU? Escreva no caso de a eficiência eficiente da CPU ser uma idade de 100%, o que significa que não estamos realmente tendo a CPU ociosa. Estamos a usar a CPU completamente, está bem? E nesse caso, o computador será muito rápido. Veja, nós precisamos fazer uso dos recursos o máximo possível, certo? Por exemplo, vamos supor se cinco pessoas estão trabalhando em um projeto. Se todos os cinco trabalharem juntos ao mesmo tempo, se todos os cinco trabalharem juntos sem descansar, então o projeto será concluído muito rápido, certo? No caso de um ou dois deles assumir alguns riscos ou ficar ocioso, que significa que eles realmente não estão trabalhando em todo o seu potencial. Nesse caso, ele vai, ele vai demorar mais tempo para o projeto para obter taxa concluída. O mesmo é o que está acontecendo aqui. Precisamos executar muitos processos. E se fizermos uso de nossos recursos, recursos significam CPU, eu inventarei ou qualquer coisa. Se você fizer uso dele completamente, então na verdade são computador vai se tornar mais rápido. Por quê? Porque mais processos estão sendo executados ao mesmo tempo. que significa que se um dos processos sendo executado, outro processo pode passar por I0. Assim, a solidez dos nossos computadores vai melhorar agora. Isso não é possível em nossos sistemas operacionais em lote porque max estará tomando apenas um processo e uma camada após a conclusão deste processo, você estará tomando o próximo processo do disco rígido. Ok, isso é uma desvantagem. Entre em sistemas operacionais em lote. Não, temos mais um sistema operacional, sistemas operacionais multiprogramação, que é muito popular. Sistemas operacionais multiprogramação não é nada , mas B pode ter mais de um processo na RAM. Até agora, o que quer que tenhamos visto, o que significa que nós, dissemos que podemos ter mais de um processo por direito próprio. P1 está sendo executado pela CPU, então um dos outros processos pode passar por Iwo, ok, isso é o que queremos dizer por graus. Isso é o que queremos dizer com sistemas operacionais multiprogramação. Por quê? Como estamos tendo mais de um processo dentro da RAM, isso vai melhorar. Uma coisa é a eficiência da CPU, o que significa termo útil por termo total definitivamente vai melhorar. que significa que se um dos processos em que eu vou, eu posso realmente usar algum outro processo. Eu posso realmente executar algum outro processo, o que significa que eu não estou permitindo que a CPU permaneça ociosa, certo? Assim, a eficiência CP vai melhorar por causa de sistemas operacionais multiprogramação. E também a solidez dos computadores irá melhorar. À medida que a eficiência da CPU aumenta. A solidez dos computadores também irá melhorar, o que é muito óbvio certo? Agora. Temos mais um sistema operacional que não é nada além de sistema operacional multi-processamento. Veja até agora o que temos visto, seja em lote sábio ou multiprogramação, onde é o número de CPUs é apenas um, ok, em nosso computador, que temos visto para formas de lote e formas multiprogramação que pode ser uma, apenas uma CPU. Mas em multi-processamento, onde podemos ter mais de uma CPU. Ok? Veja. Nós, até agora, o que quer que tenhamos visto, tínhamos apenas uma CPU e continuamos tomando os processos e então ele está sendo executado. Mas em sistemas operacionais multi-processamento, se mais de uma CPU estiver presente, o que pode acontecer é se um, enquanto um processo está sendo executado pela CPU, algum outro processo também será executado por esta outra CPU Escrever. Na verdade, o que estamos fazendo aqui é processamento paralelo. Processamento paralelo significa cerveja executando mais de um processo ao mesmo tempo, certo? Mas em multiprogramação ou sistemas operacionais, não estamos fazendo processamento paralelo, certo? Estávamos realmente fazendo o processamento simultâneo C, há uma diferença entre o processamento paralelo e o processamento obtido, obtido. Essa é uma diferença entre Batalha e processamento e processamento simultâneo. Se, vamos supor que incase se você tem apenas uma CPU e se continuarmos a mudar os processos e se continuarmos a executar, então dizemos que há processamento simultâneo. Vamos supor que há uma mãe que está alimentando seus dois filhos usando as duas mãos com este peão. Ok? Ele tomou duas colheres e então ela está alimentando os dois filhos, que significa que ela está dando comida para ambos os filhos. Agora, isso não é nada além de processamento paralelo. O que está acontecendo é que ela está dando a comida para os dois filhos ao mesmo tempo usando as duas mãos, certo? Isto é o que queremos dizer com processamento paralelo. Considerando que no caso de ela usar apenas uma mão e se ela recebe o que, ela dá 1 à frente uma oferta crianças e se você usar algum outro para algumas outras crianças e ela seria se ela continuar fazendo isso intercambiavelmente, então b teta que S processamento simultâneo. É um exemplo muito engraçado, certo? Então, mas ainda é, na verdade ajuda a entender. Então essa é a diferença entre processamento paralelo e processamento mult, simultâneo. Essa desvantagem com o processamento paralelo, engano definitivamente processamento paralelo será mais rápido do que o processamento simultâneo. Isso é certo, certo? Mas, na verdade, a desvantagem com isso é em processamento paralelo, o custo do sistema vai melhorar, vai aumentar, certo? Os custos do sistema aumentarão porque estamos tendo mais de uma CPU. O custo do processador é muito alto hoje, certo? No caso de termos dois processos, o custo dos sistemas se tornará muito alto. Então, isso é uma desvantagem. Não temos sistema operacional multiprocessamento. Veja o que estamos usando hoje em nossos computadores é sistemas operacionais multi-processamento. Por quê? C, você deve ter aqui aquele polvo ou processador de código, processador quad core, certo? O que faz quando faz processador quad-core? Temos quatro processadores que são colocados em nosso computador. Isso é o que queremos dizer com processador quad-core. Considerando octa processador núcleo significa que temos oito processadores que são colocados no computador nó. Ok? Então isso é tudo. Todos nós operamos. Todos os computadores que estamos usando hoje não é nada além de realmente trabalhar com base no sistema operacional multiprocessamento, certo? Tudo bem. Então estes são os vários tipos de sistemas operacionais que temos. Ok? Então, quais são as coisas que vimos? Vimos o que se entende por um grau de multiprogramação, que não é mais do que o número máximo de processos que podem estar presentes na RAM. Então vimos algo nos chamou, então sv. Então, quais são os vários, o que se entende por eficiência da CPU? A eficiência da CPU não é nada além de tempo útil da CPU dividido pelo nome total ACP do qual significa qual é a fração total de tempo que temem utilizar a CPU fora do tempo total. Isso é o que a eficiência da CPU significa, certo? À medida que a eficiência da CPU aumenta, o que significa que, tanto quanto você estiver usando a CPU, utilizando o tempo da CPU, mais rápido será o computador. Ok, isso é o que a eficiência da CPU na verdade, por isso as eficiências do CPS são muito importantes. Tudo bem. Então vimos algo do que são os vários tipos de sistemas operacionais. Bachelor S não é nada, mas teremos apenas um processador e teremos no máximo um processo dentro da RAM. Isso é o que queremos dizer por caminhos. E os caminhos são muito, muito lentos porque a eficiência da CPU é muito menor. Então vimos sistemas operacionais multiprogramação. Em sistemas operacionais multiprogramação, podemos ter mais de um processo na RAM. E assim ele vai, sistemas operacionais multiprogramação será muito mais rápido do que o lote sábio porque a eficiência da CPU é muito melhor. Enquanto multiprocessamento, sistemas operacionais multi-processamento, podemos ter mais de um processador e também mais de um processo pode estar presente na RAM. Veja em ondas de multiprogramação, podemos ter o que max um processador, mas podemos ter mais de um processo dentro da RAM principal sistema operacional multi-processamento. Podemos ter mais de um processador, bem como podemos ter mais de um programa na RAM. Agora, o sistema operacional multi-processamento é definitivamente mais rápido do que o sistema operacional multiprogramação. Mas o sistema operacional multi-processamento sofre de uma desvantagem que o custo do sistema vai aumentar. 8. Um ponto importante para observar: Bem, até agora vimos três tipos de caminhos à parte. Temos visto o mal também, como vimos advogados de multiprogramação, e temos visto formas de multiprocessamento, certo? Entre estes três OSS garganta neste curso, estaremos usando apenas uma maneira e nada. Isso não é nada além de multiprogramação. Goya, o que significa que há apenas uma CPU dentro de um computador e nossa RAM pode ter mais de um processo de cada vez. Ok? Veja, esta é a nossa CPU. Esta é a nossa RAM. Vamos supor que este é o nosso disco rígido, ok? Este é o nosso disco rígido, esta é a nossa RAM. Agora, no caso de eu ter mais de uma CPU, a boa ajuda, este é multiprocessamento sem fio agora no caso de você ser um ano, uma CPU, mas permitimos mais de um processo dentro da RAM em qualquer momento. Então dissemos que faz formas multiprogramação. Considerando que no caso de um rústico que deve haver apenas uma CPU e que deve ser no máximo um processo dentro da RAM. Então dizemos que são formas de lote, certo? Estes são os três tipos de ondas como vimos até agora. Agora, entre isso, ao longo deste curso, estaremos usando principalmente algo chamado de sistema operacional multiprogramação, OK? Por padrão, no caso de haver uma mudança, eu vou deixar você saber em dizer o vídeo. Ok. Mas no caso de eu não dizer que tipo de voz eu estou usando, você sempre assume que nós vamos usar maneiras multiprogramação, ok, tudo bem. 9. Bloco de controle do processo: Então, até agora vimos que sempre que um usuário abre um programa, seu processo será criado, certo? O que significa que quando ele dá para o usuário abre um programa três vezes, três processos serão criados para esse mesmo programa. Certo? Agora, este programa para o qual o processo é criado também é chamado como entidade passiva. Está bem? Ele também é chamado como entidade passiva. Considerando que aqui, o processo que é realmente criado para o programa também é chamado como entidade ativa. O próprio nome sugere, certo? O processo está realmente ativo, o que significa que ele está sendo executado pela CPU, enquanto nosso programa não está fazendo nada certo. É simplesmente criar o, uma vez que o processo é criado, então, na verdade, não estamos usando o programa por realmente estamos usando o programa para criar mais processos. Mas além disso, não estamos usando o programa para qualquer outra coisa, certo? Só que estamos usando o processo, o que significa que estamos movendo o processo para RAM e, em seguida, o processo está sendo executado pela CPU. E tudo bem, então este é o 1 que eu queria discutir. Ok, seu processo também é chamado como entidade ativa, enquanto um programa também é chamado como entidade pass-through. Finalmente, agora, não mais. Sabemos que para cada programa um processo será criado sempre que o usuário abrir o programa. Agora, o processo não só conterá programa, ele também terá mais alguma coisa, certo? Este é um processo que é criado para um programa específico, certo? Sabemos que o processo definitivamente conterá o programa. Agora, além do programa, ele também terá mais algumas coisas. Veja, nosso programa estará cheio de funções, certo? Nosso programa terá um monte de funções, por exemplo, ou programa terá muitas funções. Eu sei que dentro de uma função particular, há, há chances de ter chamadas de função, que significa que dentro da função seu telefone, eu posso ter uma chamada de função, digamos F2, que significa e chamando a função u de dois de função de 4x, da função que você tem um que eu estou chamando, você tem que avaliar. Agora, para isso, isso pode continuar acontecendo, que significa que funções aninhadas podem acontecer. Por exemplo, você tem uma chamada que você tem que, você tem para meus colegas três, você tem três pode chamar seu quatro. E isto pode continuar a correr bem. Agora, apenas para manter o controle das chamadas de função, precisamos de algo chamado pilha. Está bem? Essa, essa é a razão pela qual estamos tendo essa memória C Nós vamos ter uma pilha não é nada mais que uma memória, ok? Agora, sempre que seu telefone for chamado, seu telefone será empurrado para a pilha. Agora, sempre que seus telefonemas você tem que ser empurrado para a pilha. Sempre que você tem duas ligações, você tem três. Você tem três serão empurrados para a pilha. E isto vai continuar a acontecer. Agora, uma vez feito isso, a ordem de execução não é nada, mas você tem três seguido por. Você tem que seguir Bay de um, que significa que você tem três será executado uma vez que é feito, se três será estalado da pilha e, em seguida, você tem que será executado. Uma vez que F2 é feito, ele será retirado da pilha. Uma vez que o seu telefone tenha feito isso será retirado da pilha. Então é isso. O programa completou sua execução, certo? Isso está me despedido, você estaria fazendo. Agora, para isso, usamos algo chamado pilha. Veja cada programa terá muitas funções e dentro da função que é uma alta chance de chamadas de função. Apenas para manter o controle das chamadas de função, usamos algo chamado pilha. Ok, tudo bem. Agora, nosso programa também pode ter algo chamado de alocação de memória dinâmica. A alocação de memória dinâmica não é nada além de alocar memória usando malloc CNR. Está bem? Por exemplo, na programação C, usamos duas chamadas de função, certo? Sim, Malloc e Calloc. Essas chamadas de função são realmente usadas para alocar memória dinamicamente o que se entende por alocar memória dinamicamente? Alocando a memória no tempo de execução. Certo, isso é o que queremos dizer com “Malloc CL”. Ok. Agora, sempre que usamos este MLR Garcia bloqueado dentro do nosso programa, o que significa que este programa, este pence HE, este hey, espaço heap é realmente usado para aqueles alocação de memória dinâmica. Por exemplo, no caso de algum espaço ser alocado usando alocação de memória dinâmica, agora esse espaço será alocado dentro do heap de espaço. Certo? Agora, não há espaço fixo para pilha ou heap, que significa que alguns programas podem precisar de mais espaço para pilha, que significa que ele pode ter um monte de chamadas de função que tem algumas funções podem precisar de mais espaço para o calor, que significa que o nosso progresso de que esses programas terão alocação de memória mais dinâmica, certo? Então eles são realmente dinâmicos, o que significa que o heap vai crescer para cima, enquanto a pilha vai crescer para baixo. Alguns programas podem precisar de mais espaço versus aderência, nesse caso, DAC vai até aqui. Vamos aquecer vai ter apenas este espaço. Em alguns programas, o calor pode precisar de mais espaço. Nesse caso, o calor, calor será alocado mais espaço, algo assim, onde a pilha terá muito pouco espaço, ok? Em palavras simples, o que eu quero dizer isso, esta base não é igualmente dividida entre pilha e pilha. Depende muito do programa. Alguns programas podem precisar de mais espaço para pilha, onde alguns programas, mais espaço para pilha, mas, uh, alguns programas podem precisar de mais espaço para pilha. Assim, a quantidade de espaço que é alocado para empilhar ou heap entre este espaço total realmente depende do próprio programa. Ok, varia de um programa para outro. - Tudo bem. Agora este processo completo, que é criado para um programa também é chamado de Bloco de Controle de Processo, Ok. Ele também é chamado como bloco de controle de processo, PCB. Agora, para cada processo, teremos um bloco de controle de processo. No caso, se tivermos dez processos, então teremos, terá dez blocos de controle de processo. Então aqui, o nosso moral, isto é permitido CPU e RAM. E a partir de agora, existem três processos chamados P1, P2 e P3, juntamente com a citação de ondas na rampa. Ok. Agora este p1, p2, p3 não é nada além do PCP, que significa que este é PCB de p1. Este é o PCB de P2, e este é o PCB de P3. Ok, tudo bem. Então, até agora temos visto que o seu processo não só irá conter apenas o programa, mas também terá mais algumas coisas como pilha, heap e variáveis estáticas e globais. Veja o que se entende por variáveis estáticas e globais. Dentro do nosso programa. B pode usar palavra-chave estática, certo? Por exemplo, no caso, se eu quisesse declarar uma variável, declarou uma tática S variável no IE. Está bem? Estas variáveis serão colocadas separadamente nesta variáveis estáticas C. No caso de se tratar de uma variável local, o que se entende por uma variável local? Uma variável que é definida dentro de uma função é chamada como variável local. Certo? Agora, para variáveis locais, o espaço será alocado dentro da pilha, que significa que já somos vistos que todas as chamadas de função serão armazenadas dentro da pilha. Agora neste registro de ativação Fourier F1. Água são as variáveis que são criadas para o seu F1 será colocado, ok? Todas as variáveis locais. Da mesma forma para F2, pode haver muitas variáveis locais. Todas as variáveis locais de Você tem que ser colocado aqui. É assim que as variáveis locais são alocadas, mas as variáveis como variáveis estáticas são variáveis globais serão alocadas separadamente, ok? Eles não serão alocados dentro da pilha. Eles serão alocados dentro de um dia, serão realmente alocados em um determinado espaço dentro do PCB. Está bem? Isto é o que queremos dizer com bloco de controle de processo, tudo bem. Agora, no caso de você não entender as variáveis estáticas e globais, você pode ter que passar pelo básico da programação C, OK, no caso de você passar pelo básico da programação C, você será capaz de obter isso. 10. Atributos de um processo: Agora vamos ver quais são os vários atributos que temos para um processo, ok, atributos não é nada além de Propriedades. C, Para um, por exemplo, se eu sou uma pessoa, Eu posso ter um monte de propriedades como o meu curling mais difícil, meu tom de pele é marrom. Estou usando óculos líquidos. Eu tinha um monte de propriedades para mim de uma maneira semelhante, para cada processo, haverá alguns atributos, ok? Cada processo, a primeira coisa é nada além de ID de processo. O ID do processo não passa de um número exclusivo. Cada processo será atribuído um número, e esse número será dado apenas a este processo e não a qualquer outro processo. Ok, isso é o que queremos dizer com único, o que significa que cada processo terá um número único. E esse número, também dizemos que faz ID de processo. Ok, tudo bem. Isso é algo chamado contador de programa, contato de programa. Vendo o que, o que realmente pode acontecer, vamos assumir isso. Vamos ver isto primeiro. Vamos supor que temos uma CPU, OK. E P1. P2 e P3 são os três PCBs de três processos que são colocados dentro da rampa. Agora dentro de P1, P2 e P3, um deles será executado pela CPU. Escreva, vamos supor que em três deles, P1, P2 e P3 queriam CPU, ok? Eles estão prontos para, eles estão em estado pronto, o que significa que eles estão prontos, escolhidos pela CPU para execução. Ok? Agora, nesse caso, CPU pode ter que selecionar um, não, não sistemas operacionais da CPU ou pode como selecionar um entre os três processos a serem executados pela CPU. Isso é o que vimos, que é a principal funcionalidade da funcionalidade de resíduos de caminho não é nada além de alocação de recursos, que significa que os resultados aqui é CPU. Agora, a CPU tem que ser dada a um deles, um dos três processos. Agora, como é que isso está a ser feito? Isso está sendo feito por algo chamado nós, nosso código de sistemas operacionais. Agora, a parte do código COS citação não é nada, mas na verdade um programa muito grande. Você já sabe disso, certo? O código das ondas é um grande programa. Dentro dessa parte. Haverá alguma parte do programa que será realmente usada para, a fim de escrever, para defender qual dos três processos deve ser selecionado pela CPU. E essa parte do código também é chamado como agendador, OK, agendador, sombra você vive. Não é nada além de um programa que faz parte de todo o programa de resíduos. Este é o nosso programa maneiras, e este é o programa que apenas agendador e este deve Newland terá o código para dizer que, no caso, se mais de um processo precisa que CPU, que entre eles deve estar executando a CPU primeiro. Isso é muito importante, ok, que é executar a CPU primeiro. Veja cada processo vai, naturalmente, obter a CPU se não houver, não, não há dúvida sobre isso. Mas qual é a ordem em que eles estarão recebendo a CPU? Isso realmente importa, certo? E isso está sendo decidido eventualmente por um algoritmo de ajuste, o que significa que isso é, isso não é nada além do algoritmo de agendamento. Ok? Esta é a citação. Agora, este código pode ser implementado de várias maneiras, certo? Este código pode ser implementado lote de fase. Por exemplo, o, entre estes, todos esses processos, qualquer que seja o processo que veio para o RAM primeiro deve ser executado pela CPU primeiro. Esse é um algoritmo. Também dizemos que, como primeiro a chegar, primeiro sirva algoritmo de agendamento. O que se entende por algoritmo de agendamento? O algoritmo que é usado para realmente selecionar um entre o processo, um entre esses muitos processos a serem executados pela CPU. Isso é o que queremos dizer com algoritmo de programação, certo? Existem vários algoritmos de agendamento e um desses de Annealing é o algoritmo circulante primeiro a chegar primeiro a ser servido. Agora, o algoritmo de recozimento prato vai fazer está entre todos os processos que estão presentes dentro da RAM, ele vai escolher o processo que veio primeiro para a RAM. O processo que veio primeiro para a RAM, que significa que vamos supor que P1 veio para a rampa primeiro antes de p2 e p3, então P1 será dada a CPU primeiro. Isso é o que virá com certeza para o algoritmo de negociação associado vai fazer. De uma forma semelhante. Temos muitos algoritmos de tiro. Por exemplo, que é outro algoritmo de agendamento chamado como mais curto trabalho primeiro algoritmo de agendamento, que significa que entre os três processos, vamos supor que P1 precisa de cinco nanossegundos de CPU, OK, para completar sua execução. Veja esses problemas que você estaria vendo, vendo de uma forma mais detalhada. Agora estamos apenas tendo uma visão geral. Ok. Vamos supor que P2 precisa de três nanossegundos para completar sua execução, e P3 precisa de dois nanossegundos para completar sua execução. Agora, entre esses três, o processo com o menor tempo de tiro testado, tempo de execução do testador curto será executado primeiro. Isso é o que o algoritmo de primeiro agendamento de trabalho mais curto diz. Ok, o mais curto trabalho primeiro algoritmo de agendamento diz , qualquer que seja o processo que está tendo o mais curto processo habitual de saída que é recorrente, o menor tempo de execução deve ser executado primeiro, ok, agora, entre esses três, P3 precisa da execução mais curta do Crime Time, certo? Ele precisa de apenas dois nanossegundos da CPU, enquanto P2 precisa de três nanossegundos da CPU. P1 precisa de cinco nanossegundos da CPU. Portanto, o P3 deve ser selecionado até este ano, pelo programador a ser executado pela CPU primeiro. Ok, então esta é apenas uma visão geral. Novamente, estaríamos vendo isso deve rotear algoritmos mais detalhadamente com muitos problemas. Finalmente, sei por que eu expliquei essas coisas é apenas para explicar que o que se entende por contador de programa, ok, agora o que pode acontecer é vamos supor que algum processo está sendo agendado Scheduler pelo agendador, o, vamos supor que algum processo está sendo programado pelo agendador para a CPU, ok. Vamos supor cp está realmente executando o processo P1, ok? Agora o que pode acontecer é que pode vir algum outro processo. Vamos assumir o processo P4. Vamos supor que estamos usando o algoritmo de primeiro agendamento de trabalho mais curto, o que significa que o processo com o menor tempo de execução será executado primeiro, ok? Aqui P3 tem o menor tempo de execução. Então eles veem os agendadores programaram o processo P3 para a CPU, ok? O que significa que a CPU não está executando o processo p3. Agora, vamos assumir um novo processo, P4 entra na RAM, ok, agora isso precisa, vamos supor apenas 0.5 nanossegundos da CPU. O que devíamos fazer é que este é um momento menor do que este, certo? Isso precisa de menor quantidade de CPU, enquanto isso, vamos supor que P3 precisa de mais quantidade de CPU, ok? Agora, nesse caso, este processo P3 tem que ser interrompido com força, que significa que este processo tem que ser interrompido de executar, execução da CPU, ok? E algum outro processo, P4 tem que ser agendado pelo agendador, OK, C0, P3 ainda não está concluído. Ok. P3s nó concluído, mas ele é parado por algum temporário por alguma quantidade temporária de tempo até que P4 está ficando, ficando concluída. Agora, uma vez que P4 é feito, estaremos executando P3. Ok? Então o que estamos fazendo aqui é sempre que estamos executando um determinado processo, no caso de um processo de maior prioridade vir aqui, palavra mais alta aqui, prioridades sendo calculadas com base no teste curto para o trabalho, certo? Qualquer que seja o trabalho mais curto, que será dada a prioridade mais alta, que será dada a prioridade mais alta que será executada primeiro. Agora aqui, uma vez que os Havens, um processo de alta prioridade entra na RAM, os processos de baixa prioridade estão sendo prevenidos. E pegamos o processo de alta prioridade e então o executamos. Ok. Então, o que realmente está acontecendo é assim que P4 é feito, nós podemos ter que continuar com p3, certo? C1s, P4 é feito, P3 não está concluído. Um, deixar alguma parte dos P3s concluídos, e então nos mudamos para P4. Agora, uma vez que antes é feito, podemos ter que continuar de lá onde paramos P3, C0. P3 é um programa. Vai ter muitas falas. Vamos supor ao executar esta parte, b realmente preempted P3 e nós mostramos antes. Agora, uma vez que P4 é feito, nós podemos ter que continuar P3 do lugar onde a esquerda para fora. Ok, então como, como é possível? Como, como vamos ser? Lembra do lugar onde deixamos de fora? Agora, para todas essas coisas, usamos algo chamado essas propriedades. Ok, contador de programa vai realmente dizer o número da instrução. O número da instrução não é nada além da linha do programa de onde preciso continuar a execução. Por exemplo, esta é a primeira linha no programa. Há um segundo atrasado no programa. Este é o terceiro final do programa. Esta é a quarta etapa, esta é a quinta linha. Vamos supor que temos executado p3 tilde terceira pista, e, em seguida, reprogramado P4. Ok? Faça porque P4 está tendo maior prioridade do que p3. Agora, vamos supor que P4 é feito vem execução de P4 é feito pela CPU completamente. Agora vamos voltar a mudar-nos para o P3. Precisamos iniciar a execução, execução da linha número quatro. Agora como vamos saber que vamos começar o, devemos começar a execução a partir da linha número quatro que está sendo indicado por alguém, algo chamado contador de programa. Ok. O contador de programas não é nada além de um registro, um registro que será nomeado mantido mais perto da CPU, ok? Isso também é chamado como contador de programa. Este registo manterá os números. Então, tão perto parece que quando o processo P3 está sendo executado pela CPU, vamos supor p, processo P4, que é de maior prioridade, veio para a RAM, ok? Agora podemos ter que antecipar a p3, que significa que podemos ter que forçar a CPU stop.py de executar P3. E, em seguida, o agendador irá agendar pessoas de processo agora antes que ele está sendo executado pela CPU, ok, algumas letras até a linha três do processo P3 é feito, e E4 está sendo agendado, ok, agora uma vez antes é feito. Podemos ter que prosseguir da linha número quatro fora da P3. Agora esta linha número quatro está sendo lembrada, é lembrada por algo chamado de comparar programa. Agora, da mesma forma, registros de propósito geral realmente lembra quais são os valores de registro que são usados pelo processo P3, Ok, veja o processo P3, o que terá bem executado quando ele está sendo executado pela CPU, será , deveria ter usado alguns registros. Por exemplo, este registo tem um valor de cinco, este registo tem um valor de seis. Este registrado como tendo o valor de três. Isto é ter um valor de dois, certo, até alinhado, até a execução da linha três. Estes são os valores que estão sendo armazenados no registro. Agora, esses valores tem que ser usado, será usado pelo IP3 ao executar o número de linha 45. Então esses valores têm que ser de alguma forma, lembre-se, ok, mas v, Quando continuamos com P3 depois de completar P4, certo? Agora, para esse propósito, ser realmente armazenar todos os valores de registro. Ok? Isso é o que queremos dizer por registro de propósito geral para todos os processos. Para cada processo, teremos um conjunto de valores de registro difíceis. E esses valores registrados devem ser lembrados sempre estamos prevenindo esse processo de execução pela CPU. Por que você faz algoritmos de programação? Ok, tudo bem. Da mesma forma, o, Haverá uma lista de arquivos abertos, que significa que os arquivos que são abertos pelo processo P3, Isso também deve ser lembrado. Ok. Veja os arquivos estão lá haverá alguns arquivos para um, devemos ter visto que o que se entende por Ivo escrever I0 não é nada, mas ler algo de algum dispositivo IO, especialmente ler alguns arquivos de, dos dispositivos IO. Agora, esse processo P3 deve ter realmente aberto alguns arquivos. Abrir significa que deveria ter começado a ler alguns arquivos. Vamos supor que ele leu metade do arquivo depois de executar a linha número três até executar a linha número três. Ok, agora a leitura do arquivo da parte que sobrou tem que ser continuada, ok? Por essa razão, B, lembre-se da lista de arquivos abertos que estão sendo feitos por um, bem, para sobrecarregados pelo processo de feito para o processo P3. Está bem, mas estarias a lembrar-te. Da mesma forma, temos uma lista de dispositivos abertos. Por exemplo, o processo P3 deve ter usado a impressora para imprimir uma página. Ok, agora, até que o, vamos supor para printf, para imprimir uma página completa, temos impresso metade da página. Ok. Agora o processo P3 está sendo preempted, sendo premed admins sendo interrompido forçosamente da execução pela CPU, e P4 é feito. E uma vez que antes é feito, P3s impressão tem que ser continuado a partir do lugar onde nós deixamos de fora. Ok, então nós usamos algo chamado isso, Dispositivos abertos, que significa que os dispositivos que estão sendo abertos pelo processo P3 devem ter sido lembrados quando continuamos depois de sermos prevenidos. Certo, então usamos isso. Agora, o que se entende por produção é um subiu. Um processo em particular tem algum espaço, certo? Ele tem algo chamado um espaço de pilha e espaço de heap, que significa que para chamadas de função, ele usa o espaço de pilha e para alocação dinâmica, para, para alocação dinâmica de espaço, ele usa o espaço de heap. Agora, um processo, o processo P3 terá um contribuintes particular e espaço de pilha. E o processo P quatro também terá seu próprio espaço de pilha e espaço de pilha em seu PCP certo? Agora, P4 não deve acessar este espaço, assim como este processo não deve acessar este espaço, ok, isso é o que queremos dizer com produção. E para cada processo, nosso sistema operacional precisa ter certeza de que ele não está usando o espaço de um processo, não está usando o espaço de outro processo. Ok? Isso é o que queremos dizer com atributos. Sei que é um pouco difícil compreendê-lo muito claramente na primeira vez. Mas à medida que continuamos progredindo, você será capaz de entender a maioria das coisas. Ok, tudo bem. Agora estes são os vários atributos de um determinado processo. Agora vamos ver um tópico muito interessante chamado faz algoritmos de agendamento, algoritmos programação de CPU, ok, tudo bem. 11. Tipos de agendamento de agendamento de agendamento de programação de contexto: Então, até agora vimos que cada processo terá um bloco de controle de processo, que significa que cada processo é, em si não é nada além de um bloco de controle de processo. E também terá alguns atributos associados a ele. Ao contrário do ID do processo, acionar todos os arquivos abertos por oito, depois contador de programas, todos os contadores de programas valorizam todas essas coisas, certo? Para, para, para, para cada processo vamos ter um PCB e depois atributos, ok? E, em seguida, o PCB e atributos de um processo. Coletividade também é chamado como um contexto, ok, contextos de um processo. Ok, veja, nós vimos o que um PCB é ótimo. Um PCB terá código de programa aqui e, em seguida, você estará tendo pilha e variáveis estáticas e globais. Então estaríamos tendo pilha e pilha ou acertar OK. Agora isso é o que queremos dizer com PCB de ar de um processo. Junto com isso, também teremos algo chamado atributos dos EUA como processo de TI, lista AM de arquivos abertos e todas essas coisas, certo? Todas essas coisas até um determinado processo, digamos processo P1 também é chamado como contextos do processo p1. Ok, então para cada processo haverá algo chamado como contexto. - Tudo bem. Agora vamos chegar a isto. Agora, a partir disso estamos, até agora temos visto que um profissional, haverá grande. Vamos supor que um monte de programas na RAM. Primeiro de tudo, temos voz, depois temos p1, p2, p3, ok? Agora, dentro desses três processos , o processo que deve obter a CPU primeiro está sendo visitada pelo agendador. Isso é o que vimos até agora, certo? Agora. Aquele programa que o programador é especificamente chamado como unidade de curto prazo. Está bem. Permite que você nos deixe também chamado o agendador de curto prazo. Ok. Agora, que a curto prazo você deve aprender, será parte do nosso código Waves. Nós já vimos isso. Está bem? Agora, agora sabemos que a partir do disco rígido movemos alguns programas para a taxa de rampa. Podemos inicialmente o processo está sendo criado, que significa que o processo é induzido TDD, onde uma vez que um usuário abre, um sub programa, processo será criado, que dissemos que os processos em novo estado, Agora haverá muitos processos que serão novos estados, certo? Haverá muitos processos no novo estado. Agora, dentro desses, entre esses processos, só podemos mover, mover alguns processos para a RAM, certo? Porque a capacidade da RAM é muito menor do que a capacidade do disco rígido. Agora, entre esses vários processos, quais processos devem, qual grupo de processos deve ser movido para a RAM? Isso tem que ser decidido de novo, certo? Isso é também um, o que queremos dizer com alocação de recursos. Nós vimos na parte anterior do nosso curso, talvez na segunda, segunda palestra, nossa primeira palestra, nós vimos isso direito. Agora. Esses projetos, esses RAM é um recurso que tem que ser dado a poucos processos entre os, todos esses processos abatidos, certo? Isso, e saber quais processos devem ser movidos para a RAM está sendo decidido por algo chamado Ernest longo prazo scheduler. Ok, programador de longo prazo é em si um programa que fará parte do nosso programa de sistemas operacionais. Agora, este longo prazo derramou um pequeno ditado entre os processos que estão sendo criados dentro do disco rígido, que são os processos que tem que ser movido para a RAM. Apenas poucos processamentos. Vamos supor que nossos processos de arquivo que são criados dentro do disco rígido. Mas temos apenas Spacewar, apenas dois ou três processos salvos que RAM fora dos processos de arquivo. Um chumbo para R, três podem ser movidos para a RAM porque a capacidade de espaço livre na RAM é um, pode conter apenas dois ou três processos. Agora, qual dos dois arquivos tem que ser movido do disco rígido para RAM está sendo decidido por um programa chamado de curto prazo mostrou-lhe que, ok, tudo bem. Agora vamos supor que nossa RAM está cheia, ok? Nossa RAM está sendo completamente ocupada usando quatro processadores e terminando para P1, P2, P3 e P4. Vamos supor que um novo processo, P5 está sendo criado, ok? E vamos supor que cada processo terá algo chamado como prioridade, ok, nós vimos isso, mas a realidade é um número que é dado a cada processo que vimos no lado do atributo, veja, cada processo será dado um número, digamos processo P1, P2, P3. Vamos, nós em P1 é dado um número e sete, p2 é dado um número, S6, p3 é dado um número como três. Está bem? Agora, vamos supor que o processo cujo número de prioridade é maior deve ser dada a maior precedência, maior prioridade, o que significa que p1 está tendo maior prioridade do que p2 porque sete é maior que seis. Da mesma forma, P um também é maior do que o P1 deve ser dada prioridade mais alta palavra P3 porque sete é maior que três, ok? Então, entre esses três processos, P1 está tendo a prioridade mais alta, certo? Assim, cada processo será dado um número prioritário. Ok? Agora vamos supor que P1, P2, P3 e P4 estão tendo alguns números. Vamos supor que p1 está tendo um ampere um, P2 está tendo um número dois P3s tendo um P3 despreparado, P4 está tendo uma prioridade de quatro, e P cinco está tendo uma prioridade de cinco ou mais. Agora, no caso de P5 entrar na RAM, p53 será executado primeiro. Uma vez que p com phi entra na rampa, p53 será preferido antes de p1, p2, e p3 e p4 pela unidade de folha, certo? Porque P phi está tendo maior prioridade do que esses quatro processos. Mas o problema aqui é que a RAM não tem espaço para P5. Não podemos mover PFA do disco rígido para RAM porque esta base já está sendo ocupada em, digamos, a rampa. Agora o que devemos fazer, o que devemos fazer é mover um dos processos na RAM para o disco rígido. E devemos mover o processo de alta prioridade, que é p phi do disco rígido para a RAM. Não há outra maneira, está bem? E nós devemos sempre GW, GW mais importância para o processo de alta prioridade, ok? Os processadores Hyper EIRP ou D devem sempre ser executados primeiro antes dos processos de prioridade do advogado. Então, a única maneira de fazer isso é que precisamos mover um entre esses processos de baixa prioridade para disco rígido e precisamos mover o processo de alta prioridade para a RAM. Ok. Agora, a decisão que B pode ter que tomar aqui está entre esses quatro processos chamados P1, P2, P3 e P4 beach process, você vai se mover para o disco rígido? Ok, veja, precisamos mover um entre esses processos para disco rígido para que possamos trazer p phi para o espaço livre da dívida deles, que está sendo liberado agora, ok? Agora, qual entre esses quatro processos tem que ser movido para o disco rígido que deve ser decidido. E isso é novamente decidido pelos seus sistemas operacionais. E a parte de, a parte das ondas que dita que é também contextos folha de médio prazo você está bem. Programador de médio prazo é em si uma função ou um módulo que está apresentando o referido código ROS, irá decidir qual processo deve ser cinta fora da rampa para que o processo de alta prioridade possa ser varrido para a RAM. Ok, trocar OK significa ferver um processo. A troca de rampa significa mover o processo para o rap, ok, essa é a diferença entre trocar e trocar. Ok. Então este movimento para fora e trazendo também é chamado como wrapping C. Nós realmente modo um processo de baixa prioridade de RAM para disco rígido e processo hiperativo mais remoto do disco rígido para taxa de RAM. Esses processos são chamados de embrulho. Está bem? Esta, esta, esta, esta troca também é chamada de troca, tudo bem. E isso está sendo feito por algo chamado Shatila de médio prazo dos EUA. Então, então, o que, o que vimos até agora, longo prazo deve olhar, curto, médio prazo você deve aprender. Agora, fora do número de entre muitos processos, quais processos devem ser movidos para a rampa e quantos processos devem ser movidos para a RAM está sendo decidido por Shi Du Lin de longo prazo. Está bem. Agora, uma vez que os processos são colocados dentro da RAM, qual processo deve acessar a CPU primeiro está sendo decidido a curto prazo, você deve aprender? Está bem? Agora, sempre que nosso processo de alta prioridade está sendo criado no coração é um dos processos de baixa prioridade tem que ser movido para o disco rígido. Agora, qual entre esses processos deve ser movido para o disco rígido está sendo decidido por algo chamado de médio prazo você deve aprender, ok, tudo bem. Sabe, sempre que somos executados, vamos supor que estamos executando um processo quando a CPU está executando um processo P1, ok? Ou programador de curto prazo ou simplesmente, podemos até dizer que um c, curto prazo você deve aprender a ser simplesmente chamá-lo inaugurou. Não terias problemas, está bem? Porque acionista de curto prazo é toma a decisão mais importante e que é o processo que deve ser executado pela CPU próxima, ok, isso é muito importante. E então nós simplesmente dizemos um curto prazo você deve aprender agendador? Ok. Agora, vamos supor que o processo P1 foi programado a curto prazo. Você deve aprender a CPU? Ok, agora, vamos assumir um novo processo. Deixe-nos saber que estamos tendo apenas P1, P2 e P3. E o P3 está sendo programado pelo agendador para ser executado pela CPU. Vamos supor processo de alta prioridade que P4 é movido para a RAM, OK, o que significa que P4 está tendo maior prioridade do que P1, P2 e P3. Ok, vamos supor isso. Agora, nesse caso, o que estaremos fazendo é que estaremos preempting P1, e então estaremos agendando P4 para que continuemos P1 após a execução de P4. Certo, isso é o que vimos até agora. Agora, este processo, eu não sei o que eles fizeram é que nós temos antecipado P1 e nós estamos tomando p4. Na verdade, o que vamos fazer é que precisamos salvar o contexto de P1. Por quê? Porque precisamos continuar a taxa P1. Então podemos ter que armazenar o PCB, bem como atributos de P1, que também dizemos que este contexto de p1, certo? Contexto de P1 tem que ser salvo em algum lugar do nosso computador. E então continuaremos com P4. Ok, por quê? Porque depois de terminar P4, talvez tenhamos que continuar P1 de onde saímos, certo? Para isso, deveríamos ter salvo o contexto de P1, certo? Isso é o que queremos dizer com mudança de contexto, ok? Todo esse processo também é chamado como comutação de contexto, que significa que sempre que um novo processo, vamos assumir, quando, vamos supor que CPU está executando P1 e P4 é sempre que P4 entra na RAM cujas prioridades Contratá-los? P1. P1 tem que ser prevenido. Bb, e contextos de P1 tem que ser salvo, e P4 tem que ser programado para a CPU, ok, todo esse processo também é chamado como mudança de contexto. que significa que estamos mudando os contextos, que significa que inicialmente estávamos tendo esse contexto de P1 na CPU. Agora estamos tendo o contexto de P4 na CPU porque temos alternar o contexto. Está bem? Finalmente. 12. Vários tempos de um processo: Então, antes de ver todos esses conceitos, ok, quais são os vários tipos e tudo isso? Vamos ver, qual é a diferença entre o ponto no tempo e a duração e o tempo. Qual é a diferença entre as duas cidades? Então, novamente, ele está entendendo os tocos primeiro. Ok. Vamos supor que é uma pessoa. Diga, sim. Ok. O nome da pessoa é CaE. Ok. Ele está planejando entrar no escritório. Ok. Vamos supor que ele chegou ao Gabinete, o que significa que ele entrou no escritório às 01:00 da manhã. Ok. Com um nome, ele entrou no escritório e depois trabalhou até 03:00 da manhã. E ele saiu do escritório às 03:00 da manhã. Ok. Ele saiu do escritório às 03:00 da manhã. Tudo bem. Agora, este não. Quando é que ele chegou ao escritório? Chegou ao escritório às 01:00 da manhã. Ok. Este AM também é chamado como point-in-time. Por quê? Porque é um único ponto, ok? Um nome é um único ponto no tempo. Agora, de forma semelhante ligado ele deixar o escritório, ele deixou fora é um 3m e este três M também é um ponto no tempo. Ok. Quantos dos nossos ele trabalhou no escritório? Ele trabalhava no escritório. Divertido para nós. Certo. Esta duração de tempo das 10h às 3M é o que ele trabalhou firme. Agora esta duração não é nada além de nós. Agora isso para nós também é chamado de duração no tempo. Ok? O tempo de trabalho dele não passa de duração no tempo. Então isso é uma diferença entre o ponto no tempo e a duração e o tempo. Ok? Agora vamos ver essas coisas. Tudo bem. Agora, nós sabemos que aqui nós inicialmente que por um programa será concluído de programa fonte para programa máquina. E então ele será colocado dentro do coração bys, então ele vai ser modo na RAM. Então, uma vez que o processo está em gram, ele pode ser executado ou o I0 será feito para o processo RAW, esperando que algum evento aconteça. Todas essas coisas, ok, isso é o que já vimos antes. Agora, em algum momento, um programa haverá um processo será movido do disco rígido para rampa. Ok. Aquele ponto no tempo. Eu não estou dizendo duração no tempo. Estou dizendo que é ponto no tempo. Esse ponto no tempo em que o processo é mais do disco rígido para RAM também é chamado como tempo de chegada, ok. É também corredores são cada vez que um tempo de evento não é nada, mas é um ponto no tempo no momento em que seu processo tem RL para a RAM, vamos supor que é 2m, ok, às duas da manhã, seu programa chegou de difícil disco na RAM. É isso que queremos dizer com hora de chegada. Ok, finalmente, agora que um programa chegou à RAM, o que pode acontecer? Este programa será executado por algum tempo pela CPU. Ele será executado compras por algum tempo pela CPU. Agora, no caso de um processo de maior prioridade entrar na RAM. Este processo será antecipado, que significa que estes blocos serão interrompidos por algum tempo e o processo de alta prioridade será taxa de execução contínua. Vamos supor que p1 está sendo executado com sua CPU. Em seguida, um processo de alta prioridade P2 entrou na RAM. E assim temos preempted T um e temos continuado com P2. Ok, tudo bem. E agora o que queremos é realmente fazer. Na verdade, está esperando. Ok. Não é, não é nem executado pela CPU nem está passando por Aibo. Ele está realmente simplesmente esperando para ser executado R2B para Iw. Ok, faz uma espera por um, ou é ele está esperando para execução, está ele está esperando para IO. Não está fazendo nada de produtividade como de não, é realmente ideal. Ok, este processo ocioso dentro da RAM, que já vimos antes, como não está pronto estado ou está esperando, é realmente isca. Ok, tudo bem. Agora, agora o, o, o bam, nós já vimos que o momento em que vamos supor o processo chegou à RAM em uma hora da manhã, ok? Agora, ele completou sua execução, que significa que todo o processo é feito às três da manhã. Ok? Agora este AM é chamado como a hora de chegada, que significa que este é o momento em que o processo entrou no rap. Ok. E este é o momento em que os três 3m também é chamado como tempo de conclusão porque desta vez, neste momento o processo concluiu sua execução e este processo pode ser removido completamente da RAM, ok, isso também é chamado como conclusão demanda. O tempo de conclusão também é um ponto no tempo, ok? Agora isso para nós, que significa o momento em que o processo, a partir do momento em que o processo entrou na RAM no processo completou sua execução. Isto para nós também é chamado como tempo de resposta. Ok, ele também é chamado como tempo de resposta. Para o tempo de processamento computacional, temos uma fórmula, certo? Na verdade, temos duas fórmulas. Tempo de conclusão menos eu nem mesmo de cada vez. O que significa que aqui são 03:00 da manhã menos um eu sou. Não é nada além de nós. Ok. O tempo de resposta é dois R C tempo de resposta é uma duração e tempo que é quatro. Isso é para a unidade é pairar e não é um l. Considerando que o tempo de conclusão é um ponto no tempo. Equipe capaz é um ponto no tempo. É por isso que a unidade de tempo de conclusão é am, a duração, a unidade de tempos de chegada cm. Mas ainda assim a unidade de tempo de resposta, que é abrigar a unidade não é nada, mas como é certo? Não é AM encontrando. Então o tempo de retorno não é nada além da duração de dez em que o processo está dentro da rampa, ok? O tempo total em que o processo está dentro da RAM, ele também é chamado como tempo de resposta. Tudo bem. Agora, o que se entende por ponderá-los? Veja neste tempo de reviravolta, quais são as coisas que poderiam, que poderiam ter acontecido? Por exemplo, há uma possibilidade é o processo P1 pode ter sido executado por algum tempo. Em seguida, um processo de maior prioridade veio para a RAM. E assim nós Priya, e então nós preempted P1. Então poderíamos ter começado com P2. Ok? Então, uma vez que p2 é feito, poderíamos ter começado novamente com P1. Então vamos supor que os processos de hiperrealidade p3 vieram para a RAM. E uma vez que P3s feito BY novamente continuar para p1, vamos supor que P1 tenha completado sua execução às 03:00 da manhã, ok? Agora, nesta coisa, quais são as coisas que, que são que aconteceram? P1 não é nada. P1 foi executado para o tronco, e esperou por este selo, que significa que P1 esperou por este tempo. E P1 é novamente executado para este tempo. E novamente, P1 esperou por esta vez. E novamente P1 foi executado para este tempo. Ok, então, na verdade, o que aconteceu aqui é neste tempo de resposta, este tempo de resposta pode ser calculado pelo calor, pode ser cortado o tempo de resposta. Há outra fórmula para o tempo de resposta. Ok, eu estou escrevendo no mais curto TED faz volta em torno do tempo é igual a estourar dez mais xy burst m mais, eu escrevi eles. Explodir m mais eu escrevi mais atraí-los. Veja aqui nós não incluímos aqui, aqui nós realmente não incluímos eu, ok, veja há uma chance de que seu processo pode não precisar de Io em si, o que significa que ele vem para a rampa, ele espera por algum tempo ou é executado e, em seguida, ele é concluído. Ok. Ele não precisa de nenhum Ivo, ok, o que significa que ele não precisa ler ou escrever em nenhum dos dispositivos IO. Isso também é possível para uma taxa de processo. Não há nenhuma compulsão que cada processo deva fazer. Eu voto, certo? É isso que está a acontecer aqui. Agora vamos supor que aqui nós assumimos que, bem, eu escrevi m é 0. Eu escrevi M também é uma duração no tempo, que significa a quantidade de tempo, vamos supor que três horas ou quatro horas é o tempo gasto por este processo em executar IPO em que significa ler alguns de leitura ou escrever a partir de alguns dispositivos de E/S. Ok, isso é o que queremos dizer com tempo de IO. Então podemos dizer que o tempo de resposta é igual a estourar dez mais dez mais tempo de espera. Ok? Esta é uma fórmula também estar em, esta fórmula também está conectada, ok? Tempo de retorno igual ao tempo de conclusão menos re-fusão. Tudo bem. Agora, depois de sair na hora, temos algo chamado de esperar dez novamente. Agora, qual é o tempo de espera de um ano? Um tem esperando, esperou por esta duração, assim como P1 esperou por esta duração, ok? Estas duas vezes, está bem? Como você calculará a duração aqui? Isto menos isto, por exemplo, o, isto é 2m, e se isto é 01:15 AM, 2m menos 150, o nome não é nada, mas 45 minutos. Certo, aqui estão unidades particulares. Da mesma forma, também podemos computado aqui. E se você adicionar esses dois períodos de tempo, podemos calcular o tempo de espera do processo P1, ok? Tudo bem. No caso de você não entender isso muito claramente, vamos ver uma empresa, isso não é realmente um problema, ok? Este é apenas um exemplo para explicar os conceitos. Veremos um problema completo. Você será capaz de entender todas essas coisas muito claramente, ok, final. Então lê-los como nada, mas o tempo gasto por um processo na RAM sem realmente executar, bem como não executar I mal. É simplesmente acasalamento e disse que a rampa a ser escolhido pela CPU para execução no futuro. Ok, isso é apenas realmente um, seu processo está pronto para ser executado, estão realizando Aibo. Mas devido à falta de recursos, ele está realmente esperando. Novamente, essa é a quantidade de tempo que é gasto por um processo em espera. Dizemos que o tempo de espera dos EUA. E o tempo de espera é uma duração no tempo. Ok? O tempo de espera é uma duração no período de tempo. Agora temos algo chamado como o membro de resposta do tempo de resposta. Verás um pouco mais tarde, está bem? Mesmo que eu diga isso não será capaz de entendê-lo um pouco mais tarde. Agora temos algo chamado tempo IO. Você já sabe disso, certo? A quantidade de tempo que é dobrada por um processo na realização E/S após reteste RL para a RAM até a sua conclusão é um chamado como eu escrevi ele, ok. Por exemplo, se o processo P1 chegou ao ram em uma AM e completou sua execução às três horas. E no caso de ter passado a partir de um 2m, dois a 15:00 AM na execução IMO, então o tempo IO não é nada, mas 15 minutos. Ok. Io tempo também é uma duração no tempo. Ok. Descubra estas são as várias vezes que temos. Não vimos por que só uma coisa corresponde a m, certo? Veremos isso um pouco mais tarde, mesmo que eu conte agora, você pode não ser capaz de entender claramente, ok? Depois de ver um exemplo, você será capaz de entender a resposta, TIM. Ok, tudo bem. 13. Tipos de algemas de programação: Vamos ver os vários tipos de algoritmos de programação que temos. Ok? Veremos cada algoritmo de sombreamento um por um. Antes disso, eles acionaram todos os algoritmos de agendamento que temos podem ser classificados em dois tipos, ok? Algoritmos de agendamento preventivo e algoritmos de agendamento não preventivo, certo? O nome em si sugere o que eles estão realmente certos. Por exemplo, o que é feito pelo homem algoritmo de sombreamento não-preventivo como, vamos vir aqui. Veja, vamos supor que esta é a nossa RAM, OK, esta é a nossa RAM e v. A partir de agora temos quatro processos, P1, P2, P3 e P4, Ok? Agora, o que o algoritmo de agendamento não preventivo diz é no caso de ser pontual, vamos supor que temos apenas três processos. Ok? Vamos supor que temos apenas três processos a partir de agora dentro da RAM. Ok? Agora, como o algoritmo de agendamento não-preventivo funciona é em adivinhar se um, vamos supor que P1 tem starter. P1 foi programado para este CP, ok, agora P1 não está executando o estado, o que significa que ele está sendo executado pela CPU agora. Agora, durante este tempo, vamos supor que há um processo chamado P4 que veio para a RAM, ok. E vamos supor que a prioridade de P4 é maior do que a de P1. Ok? A prioridade de P4 é maior do que a de P1. Agora, devo antecipar P1 e começar com P4? Eles devem continuar P1 como está? Essa é a pergunta, ok? No caso de algoritmo de agendamento não preventivo, nós nunca vamos antecipar um processo até que ele seja concluído no caso de ter começado, ok, no caso de eu ser iniciado, por exemplo, nós realmente começamos p1 aqui logo antes de P1 tem chegou. Agora. Agora, mesmo que a prioridade de P4 seja maior do que a de P1, ainda não vamos antecipar T um porque é um algoritmo de agendamento não preventivo, ok, uma camada após a conclusão de P1, vamos verificar qual processo entre estes tem a maior prioridade e então vamos escolher, ok? Mas uma vez que um processo tenha sido iniciado, uma vez que um processo tenha começado a executar , a execução, nós nunca iremos antecipá-lo até a conclusão. Isso é o que algoritmo de agendamento não preventivo significa, ok? Agora, o que se entende por algoritmo de agendamento preventivo? Prim no algoritmo de agendamento preventivo, podemos antecipar o processo, certo? Por exemplo, se p1 está sendo executado pela CPU e no caso, vamos supor que P4 entrou na RAM e nossa oração dF p quatro é maior que p1. Agora, neste caso, o que vamos fazer é antecipar p1 e então vamos ela cara P4, que significa o algoritmo de programação com galpão que você vai pagar. Ok? Então essa é a diferença entre o algoritmo de agendamento preventivo, um algoritmo de agendamento não preventivo. No algoritmo de agendamento não preventivo, no caso de você ter iniciado a execução de um processo, nós nunca vamos antecipar esse processo até a conclusão. Ok. Se eu agora tenho um olhar para este ponto, algoritmos de programação de CPU são aplicados unidirecional, dois processos que estão inter estado pronto, ok, c. Vamos supor que existem alguns processos dentro da RAM. Temos processos P1, P2, P3, e vamos assumir o processo P4. Ok? Agora sabemos que qualquer processo na RAM pode estar em um estado pronto. Pode estar em estado pronto. Será que pode Dean IMO State Art pode estar em estado de corrida, certo? Vamos supor que o processo P1 está em estado de jantar. Processo P1 está em estado de execução significa que p1 está sendo executado atualmente pela nossa CPU. E vamos supor que os processos P2 e P3 estão no estado pronto, que significa que os processos P2 e P3 estão dentro da RAM, mas eles não estão passando pelo Iowa, nem estão sendo executados pela CPU, mas ainda estão esperando dentro desse Rahm ocioso. Ok, tudo bem. Agora vamos supor que o processo P4 não é. Vou declarar. - Tudo bem. Agora, minha pergunta é, a partir de agora, vamos supor que estamos, estamos realmente tendo algoritmo de agendamento não-preventivo. Ok? Algoritmo de agendamento não preventivo. E mais uma suposição é que a prioridade do processo P4 é maior do que P2 e P3, ok? A prioridade do processo P4 é maior que b2 e b3. Agora, a partir de agora, P1 está sendo executado pela CPU, então não há chance de antecipar o processo P1, certo? Isso é o que queremos dizer com algoritmo de agendamento não preventivo. Não importa qual é a prioridade do P1. No caso de você ter iniciado P1, nós nunca vamos antecipá-lo até a conclusão. Finalmente, vamos supor que o processo P1 foi concluído, ok, tudo bem. Estamos, já vimos que sempre que um processo tiver concluído sua execução, esse processo será completamente removido da RAM. O processo foi completamente removido da rampa. Agora a minha pergunta é, agora, nosso algoritmo de duelo de galpão pode ter dois, pode ser como compartilhar um acordo único do processo para a CPU, certo? Isso é o que o algoritmo de roteamento Osha fará. que significa que agora o Não, minha pergunta é, qual processo vai menor agendador deve ceder para a CPU? Entre esses três processos, que processo, mas amante, agendador, programação para a CPU. Agora você pode dizer que o processo P4 será agendado dentro do agendador porque a prioridade do processo P4 é maior do que p2 e p3. Mas, na verdade, isso não está correto. Ok. processo do mar branco P4 está em estado ocioso. Ok. O que significa processo P4? Em, uh, a fim de continuar a execução do processo P4, nós podemos ter que fazer algum IO, que significa que o processo P4 precisa de alguns dados para ser lido de alguns dos dispositivos IO, o que significa que eles podem ser ou disco rígido se ele pode ser impresso ou qualquer Dispositivos E/S. - Tudo bem. Ok. Então o processo P4 pode ter que ler algo de um dos dispositivos IO, um só depois que ele está sendo feito, ele pode continuar com a execução. Ok, então o que, o que, o que você realmente quer dizer com isso é apenas Xi Dueling algoritmos. Será que um chumbo processos de pintura que estão em estado pronto, e um chumbo dentro deste processo, ele irá selecionar um deles dependendo da prioridade. Ok, ele nunca vai considerar um processo P4 porque o processo P4 é um Aibo apátrida c, Vamos supor agendamento processo P4, Ok? Ela deve você ou deve usar o processo P4 para CPU. Agora o CPA pode executar p4? Não, certo? Porque P4 precisa passar por I0 somente depois que ele pode realmente prosseguir com a execução. Então o que eu quero dizer com isso é algoritmos de programação de CPU que são reproduzidos apenas dois processos que estão no estado pronto e processos Magellan, Estado Iowa será bloqueado. E assim esses processos não serão considerados por algoritmos de sombreamento durante o agendamento, ok. E talvez dois ou três vídeos de volta. Eu já disse que se um processo é no Estado de Iowa, fêmeas nos vários estados de um processador e temos visto análise estado de espera Iowa. Eu já disse que se um processo está no estado Io, também podemos dizer que ele não bloqueou o estado. Ok? Esta é a razão para isso, ok? Se um processo é um Aibo ficou, também podemos dizer que, como um não está bloqueado estado porque eu hospedado no estado bloco ambos são iguais. Isso ocorre porque se um processo está no estado Iwo, então esse processo não será considerado pelo algoritmo de agendamento. Ok, então o Plus não será considerado pelo algoritmo de agendamento. - Tudo bem. Ok? Tão quente entre os processos que estão em estado pronto, o processador, o algoritmo de programação programará os processos. - Tudo bem. 14. Algoritmo de programação de SJF: Agora, tudo bem, até agora nós vimos quais são todas as introduções que são necessárias para programar algoritmos. Agora vamos ver um famoso algoritmo de agendamento chamado nós, mais curto trabalho primeiro algoritmo de agendamento. Ok, trabalho mais curto primeiro algoritmo de agendamento. Para entender isso, primeiro, vamos resolver alguns exemplos. Então aqui ele vai tornar muito fácil. Vamos primeiro ver alguma teoria. Nitidez, George Bush Annealing Algoritmo entre a matriz seria processos, processo com a menor explosão M ou execução TMC, explosão e tempo de execução. Ambos significam que um é o mesmo, certo? Teremos preferência. É um algoritmo de agendamento não preventivo. Se você sabe o que significa tecido não-cerebral lidando com o maldito direito? Além disso, é um algoritmo baseado em prioridade. Ok, e por que é um algoritmo baseado em prioridade? É um algoritmo baseado em prioridade porque o processo com o menor tempo de intermitência será dada maior prioridade, certo? Considerando que o processo com a maior explosão m terá uma prioridade menor. Então claramente é um algoritmo de agendamento baseado em prioridades, ok? Veja, algoritmo de agendamento baseado em prioridade tem algumas desvantagens, que você verá um pouco mais tarde. Mas entenda que wij como o M-phase ACH, que começou jumper canalização algoritmo também é chamado como é o, ok, por que o IAAF é chamado como uma prioridade, mas é um algoritmo baseado em prioridade. Ok, entenda. Isso ocorre porque como dF é um algoritmo de agendamento baseado em prioridade porque o processo com o menor burst m será dada maior prioridade, finito. Agora vamos ver este exemplo. Veja uma vez que vemos este exemplo, este tópico é bastante simples, ok, você será capaz de entendê-lo. Agora, já vimos em atributos de um processo, vimos o que se entende por um ID de processo, certo? Um número único que será dado a cada processo, que, Ok. Assim, IDs de processo são dadas 12345. Veja todos os subprocessos, ok, este é um processo, este é um processo, há um processo e assim por diante. São capazes, eles recebem a hora de chegada deste processo, novamente, duas unidades do tempo, ok? Bce, o tempo e a unidade para isso são unidades de tempo. Qualquer coisa, pode ser nanossegundos ou o que seja, um milissegundo ou o que for. E eles também deram as madeiras estouradas Tim também é chamado como tempo de execução. Ok, você sabe que o tempo de execução, eles tinham dado isso, eles são convidados a encontrar o tempo médio de resposta. E tempo de espera. O que significa esperar dez. Havia também como algo chamado throughput, que vamos ver bem, ou nós não temos visto até, até agora. E eles também perguntaram algo chamado Será que ela faz comprimento? Ok, qual é o comprimento dessa folha você agora primeiro, vamos ver o que se entende por tempo médio de resposta. Tempo médio de resposta de todo o processo tem C, processo hebraico terá um tempo de resposta, Y, c. Sabemos que cada processo terá uma tentação arável de rampa, certo? Veja o que significa tempo de virada. Vamos supor que esta é a nossa CPU. Esta é a nossa RAM. E isso é um pouco disco rígido. Agora, o que significa virar o tempo? Quando o processo tiver 3e no carneiro, ligamos o temporizador, certo? O temporizador está inicialmente em 0.0.0, seja lá o que for. Agora ligamos o temporizador. Agora, desde que o processo tenha sido concluído. Assim que o processo estiver concluído, vamos desligar o temporizador, certo? Em palavras simples, posso dizer que em nosso próprio tempo não é nada além do tempo gasto por um processo dentro da RAM, OK. O que significa que estamos, já vimos que eles estão em nosso próprio tempo para o tempo de conclusão menos RA vai tempo. Ok? Usando esta fórmula, podemos calcular o tempo de resposta de cada processo. Primeiro processe novamente, processe o processo e cada processo que eu. Agora devíamos ter conseguido os valores. Agora precisamos descobrir a média. O que é a média teve todos os valores que temos computado, o que significa que todo o tempo de rotação computado e dividi-lo por cinco porque temos cinco processos. Ok, vamos, vamos fazer isso. Vamos primeiro computar. Vamos primeiro desenhar o gráfico de Gantt. Ok, isso também é chamado como gráfico de Gantt. - Tudo bem. Isto não é nada além de 0 unidades de tempo. Ok? Estamos começando com 0 unidades de tempo. Ok? Comece, estamos começando, estamos começando com 0 unidades de tempo. Agora, veja mais um ponto importante. Você precisa notar que o nosso mais curto trabalho primeiro algoritmo de agendamento vai escolher o processo com o mínimo de explosão m. Isso é bom, mas tem que ser considerado que ele pode escolher apenas processos que tem um Rayleigh, certo? No caso de um processo não ter chegado à RAM, então esse processo não pode ser, não pode ser levado em consideração por esse algoritmo de agendamento. Ok, essa é uma taxa bastante óbvia, tudo bem. Agora veja isso. Agora começamos no tempo unidade 0 agora tem qualquer processador unidade de tempo raivoso 0, sem taxa de processo. O primeiro processo que chegou é P1, que são raivosos unidade de tempo dois. Então, de 0 até a nossa CPU está ociosa, ok? Nosso CPS ocioso significa que nossa CPU não está executando nenhum processo porque nenhum processo chegou à rampa, OK, C120 para o processo chegou à RAM. Nossa CPU pode executá-lo corretamente. Agora, como nenhum processo é direcionado até este momento, podemos dizer que a CPU está ociosa. Agora, qual é a desvantagem de ter a CPU ociosa? Ao ter a CPU ociosa cada friesian Siebel taxas drop-down eficiência EP vai cair. Como resultado de que são computador vai se tornar um pouco mais lento. Mas aqui não podemos fazer nada porque nenhum processo chega à rampa. Ok? Finito. Agora vamos ver. Agora na hora t2, o único processo que chegou é o processo P1, ok? É um algoritmo de agendamento não preventivo, certo? Tenha esse ponto em mente. Nosso SJF é um algoritmo irradiante não-preventivo Shatila. - Tudo bem. Agora que horas você faz um processo Lee P1 chegou, ok, veja, eu vou tomar isso como P1, OK? Unidade P1 para P2, três é P3. Ok, processo, tudo bem. Agora vamos assumir o processo. Só um veio de novo. Então eu estou começando com 100 vezes qualquer ferramenta. E o nome da execução do domador é para três unidades do tempo, certo? O que significa que até às cinco, P1 continuará. Veja, você não pode antecipar isso dentro deste tempo, ok, aqueles que lá podem, pode vir um novo processo cuja prioridade é maior que P1. Mas ainda assim, não podemos antecipar p1 aqui porque é um algoritmo de agendamento não preventivo. - Tudo bem. Agora vamos supor que p1 é feito execução certo? Agora na unidade de tempo phi, que são os processos que chegaram. P2 chegou. P2 já chegou antes, cinco chegaram em algum lugar aqui, ok? Da mesma forma, P3 chegou. P4 não chegou porque matrizes P4 um tempo honrado seis, mas chegamos apenas até cinco. Da mesma forma, falha no processo P não é um defensor. Agora, entre os outros, P2 e P3, precisamos escolher o processo com a maior prioridade. Agora, qual processo tem a maior prioridade? Isso realmente depende de qual processo tem a menor temperatura de explosão. Certo? Agora, entre esses dois, a menor explosão M é o processo P2, que está tendo apenas duas unidades de tempo. Então precisamos começar com C, e a partir de agora estamos concluídos p1. Ok, tudo bem. Agora vamos começar com o processo P2. Processo P2, construir aleatoriamente até sete unidades do tempo. Certo? Agora, em sete unidades do tempo, o processo P3 já chegou bem. Processo P1 também tem taxa de gravação tanto nosso EDX, mas p phi não chegou porque ele estará tendo apenas no momento em que você girar, mas chegamos apenas até sete, bem. Agora, entre P3 e P4, precisamos escolher o processo com o alto tendo a maior prioridade. Agora, o processo com a maior prioridade não é nada além do processo com o menor estouro dez. Agora, o processo P4, como o contrato tem, tem menos estourado no combate ao processo P3. P4 será programado pelo nosso algoritmo de agendamento, e ele será executado por apenas uma unidade de tempo, ok, processo P quatro também é feito, será executado até tarde. - Tudo bem. Agora uma vez, agora o que eu sou você girar todos P são ambos P3s são lidos, bem como doloroso tem também estão à direita? Agora, entre P3 e P phi v pode ter que escolher o processo com a maior prioridade. E isso não faz nada além de processar p para ele, uma vez que está tendo a menor explosão M comparando com P3. - Tudo bem. Então P5 funcionará até a unidade de tempo dez. Ok? Então PFA também é feito agora temos 1D P3, então não há outra maneira. Talvez tenhamos que executar o processo P3. E será executado pino 13 unidade de tempo, 13 unidades de tempo encontrando. Então terminamos com o gráfico. 15. Exemplo 1: Agora podemos, agora podemos calcular tudo, tudo bem, o que quer que eles tenham pedido, como tempo de resposta, tempo de espera ou o que seja, é fácil na verdade, daqui em diante. Ok, vamos tudo bem, vamos primeiro calcular algo chamado como coisa de conclusão, ok? Tempo de conclusão de cada processo. E é assumido que este é o processo p1, p2, p3, p4, e então p phi c eu tenho direito, eu escrevi todos os IDs de processo aqui, direita, 12345. Agora, qual é o tempo de conclusão do processo P1? Processo, processo P1 completou o arquivo da unidade do tempo, certo? - Tudo bem. Da mesma forma, o processo P2 foi concluído no tempo unidade sete taxa encontrar. Processo P3 completou sua execução na unidade de tempo 13. Processo P4 é concluída sua execução ou tempo NÃO. E processo P cinco como computou sua unidade de tempo de execução em multa. Então nós calculamos o tempo de conclusão agora precisamos calcular algo chamado tempo de retorno atrás. Não há volta em torno de dez, já sabemos a fórmula. O tempo de retorno não é nada , mas o tempo ativação não é nada, mas o tempo de conclusão de um processo menos o tempo Arabella dessa taxa de progresso. Por exemplo, tempo de retorno do processo P1 não é nada pássaro conclusão temperatura, que é cinco menos rio DEM, que é dois. Então cinco menos dois não é nada além de três. Está bem? Da mesma forma para o processo P2, tempo de rotatividade não passa de sete menos três, que é quatro. Da mesma forma para o processo P3, este 13 menos seis que é sete. Da mesma forma, desculpe. Na verdade, é sete menos três, que é quatro, tudo bem. É 1313 menos quatro, que é nove. Ok? Da mesma forma para o processo P4, é oito menos seis, que é dois, o que significa que tem gastar duas unidades de tempo e dizer que eu tenho, certo? Isso é o que o tempo da Enron significa. Da mesma forma para o processo P cinco, é dez menos oito, que é dois. Ok? Então estes são os tempos de reviravolta. Agora podemos calcular o tempo médio de resposta. Como eu adiciono todas essas coisas para um que não é nada mais do que três mais quatro mais nove mais dois dividendos briefing. Ok, essa coisa, você pode calcular sozinho. Está bem? - Tudo bem. Agora, vire-se. O tempo é completamente bom computador. Agora, depois do doador uma vez, precisamos calcular algo chamado tempo de espera. Certo? Agora vamos calcular o tempo de espera. Veja mais um ponto importante que preciso contar aqui. Aqui. Na verdade, eles não fizeram qualquer tempo IO escrever para qualquer processo. Eles não deram nenhum Iwo Tim. Por quê? Porque aqui eles assumiram que é um ponto muito importante. Por favor, tome nota disso. Eles assumiram que nenhum processo será submetido. Eu, oh, ok. Nenhum processo está precisando, eu não sei. O processo pode não ter necessidade de ler qualquer coisa a partir de qualquer dispositivo de E/S. Ok, essa é a nossa suposição para este problema. Ok. Está dentro do, por favor, anote. Eu suponho que nenhum processo precisa de mim oh, ok, isso é parte do nosso problema. - Tudo bem. Agora vamos calcular a isca que Dempsey pode alterar. Nós já sabemos que nosso tempo de resposta não é nada além de esperar dez mais estourar Tang mais iota M. Ok. Agora eles deram claramente que nosso tempo IO é 0. Agora é 0, então o tempo de resposta não é nada além de ponderá-los mais o tempo de intermitência. E a partir disso eu posso calcular nossa espera, tempo de espera igual a virar o tempo menos tempo de explosão. Esta é a fórmula para ler Dempsey. Na verdade, esta fórmula é muito lógica. Ok, você não precisa da biotecnologia. Está bem? Por quê? Veja o que significa tempo de espera. Na verdade, na nossa reviravolta, tempo de resposta não é nada, mas é uma combinação de comer dez mais explosão m mais eu escrevi. Agora eu escrevi M é 0, então o tempo de resposta não é nada, mas é uma combinação de ponderá-los, que significa o tempo gasto por um processo dentro da RAM sem fazer nada, mais o tempo gasto pelo processo com a CPU. Agora, se você vier, se você subtrair o tempo de intermitência, o que significa o tempo de execução do tempo total gasto pelo processo na RAM. Você pode descobrir a quantidade de tempo gasto pelo processo na RAM sem fazer nada produtivo, o que significa que ele está realmente esperando para ser executado nosso IO, ok, finalmente, a partir desta fórmula, podemos calcular debate eles. Final, vamos calcular a demarcação de acasalamento, isca-los do processo P1 não é nada além de tempo de resposta menos o Emirado. O tempo de resposta é três e o tempo de explosão é três. Então três menos 3s, 0, ok, mesma forma, quatro menos dois é 29, menos três é 69, menos três é seis phi n, então dois menos um menos 12 menos dois é 0. Está bem? - Tudo bem. Três menos três é quatro, menos dois é dois. E n menos 362 menos um menos 12 menos dois é 0. - Tudo bem. Agora podemos calcular o tempo médio de espera, certo? Para calcular o tempo médio de espera, basta adicionar tudo isso para você, tempos de espera e depois dividi-lo por 0, ok? Esse é o tempo médio de espera. - Tudo bem. Agora, após a ponderação média deles, precisamos calcular algo conhecido como taxa de transferência. Novamente. Antes de computação, taxa de transferência de computação, vamos primeiro calcular. Claro que lidere. Está bem. Agora, o que se entende por puro acordo nisso e o tempo total que nosso algoritmo de agendamento mostrou para você com os processos, ok? Veja, nosso algoritmo de agendamento começou a programar processos no momento que você precisa, ok, apenas a partir de duas horas deve lidar algoritmo começou a governar processos e processos de agendamento até a unidade de tempo 13, ok? Então sombra total que você vive não é nada além de tempo de conclusão do último processo menos tempo de chegada do primeiro processo. Está bem? Você deve aprender tempo de conclusão do último processo? Menos RM0 saiu? Primeiro processo. Tempo de conclusão do último processo 13 menos tempo de chegada até piores processos também. E então você deve emprestar este 11, ok, este é o escudo e ver sombra você. O comprimento não é nada além de tempo total. Nosso algoritmo de agendamento tem realmente processos programados, ok? Nosso algoritmo de agendamento, como você lida processadores por alavancada danificado iniciando Purdue até 13. Agora vamos calcular mais uma coisa que não é nada além de taxa de transferência. throughput não é nada além do número de processos executados por unidade m. Número de processos executados por unidade m. C aqui. Quantos processos você executou aqui? Na verdade, executamos cinco mercearias, azurite, p1, p2, p3, p4 e p5, que significa que somos dados apenas para processos u. Então, produtividade igual ao número de processos degradados pela sombra que você comprime, ok? E número de processos que é concluída, xy, execução concluída não é nada além de phi você. E você deve emprestar este limão? Ok, então a fibra 5A alavancada é essa taxa de transferência, que significa que phi por 11, processos concluíram a execução por unidade de tempo, ok? A unidade é processos auto-estrada 11 processos, tempo de execução justo. Desculpe, processos por unidade de tempo. Está bem. Não é execução TAM, na verdade é unidade MB. Está bem? Então esta é a taxa de transferência. - Tudo bem. Estamos computados tudo certo? médio de resposta, tempo de espera através potenciar suas pernas. É isso. Ok, isso é, isso é o que tudo sobre o trabalho mais curto para o algoritmo de agendamento, ok, tudo bem. 16. Exemplo 2: Então, é exatamente como último problema, ok, Como vimos, por exemplo, usando SJF, precisamos descobrir o tempo médio de resposta, folha de tempo de espera média que você vai comprimento e taxa de transferência. Está bem? Agora vamos primeiro sacar o tiro. Como de costume. Nosso gráfico de Gantt sempre começará com M no 0, certo? Comece com 10. E mais um ponto importante, mesmo para este problema, precisamos assumir que nenhum processo precisa. Eu votei, Ok, sem prosa, eu voto, objetivo de todos os processos são 0. Certo, essa é a nossa suposição. Certo, esse é um ponto muito importante. Finalmente, agora, que foram um 0 honrado novamente, nenhum processo chega à fila, certo? Eu sei que palácios seta para a fila pronta, o que significa que nenhum processo entra na memória principal, certo? Então, de 0 para um, que vai, CPU será ocioso, o que significa que nossa CPU não vai executar qualquer processo são executados instrução será, eu fiz. - Tudo bem. Agora que horas são, Lee Processo P1 chegou, certo? O processo P1 chegou à RAM. E então nós podemos ter que começar o processo P1 e levar a ir até o oito minutos. Por quê? Porque estamos usando algoritmo de agendamento não preventivo. Não importa durante este tempo, quaisquer outros processos I apriori de alta prioridade são direcionados para a RAM ou não. Vamos sempre executar processo P1 porque é um algoritmo de agendamento não-preventivo. Uma vez que eles tenham agendado um processo, nós nunca vamos presumir que cruza até conclusão em algoritmo de agendamento não-preventivo. Ok, nós já vimos isso, tudo bem. Agora, uma vez que você gira, todos os processadores são capazes de chegar à rampa, certo? Ou cada processo é capaz de que eu sou agora o que podemos fazer entre todos estes pré-visualização já concluída P1, certo? Agora, entre esses quatro processos, o processo com o menor tempo de intermitência será executado na próxima taxa. Agora o navegador o menor aniversário, que não é nada bom processo P3. O P3 é executado por apenas um termo nele até que nove estejam bem. Da mesma forma ampla vem o processo. P4. P4 será executado por duas unidades de tempo. - Tudo bem. P4 também é feito. Então podemos ter que executar o processo P 2, certo? Porque cinco é menos que oito. Então o processo P2 será executado. Processo P2 será executado por 50, dez minutos, e ele vai gostar muito. Vai até 16 phi. E então realmente não temos, não temos outra opção. Talvez tenhamos que executar o processo P 5. E P phi irá executar até 24 porque ele precisa de uma unidade de tempo da CPU para completar a execução. Finalmente, agora vamos calcular o tempo de conclusão de cada processo. Está bem? Vamos calcular o tempo de conclusão do processo. - Tudo bem. Nós já sabemos que o tempo de conclusão da taxa de tiro em si, tempo de conclusão do processo P1 em C, tempo de conclusão do processo P2 é 16. tempo de conclusão do processo P3 é nove. tempo de conclusão do processo P4 é 11 e o nome completo do processo P para você é 24. Finalmente, agora vamos calcular o tempo de volta. Já que sou um ego, o tempo é 0. Desde r i o tempo é 0, vire bem. Tempo de reviravolta não é nada além de conclusão. Ligar um centavo não é nada além de tempo de conclusão menos tempo de chegada, certo? Então 8 menos 1 é 7, 16 menos dois é 14, 9 menos 3 é 6, 11 menos 4 é 7, 24 menos cinco é 19. Está bem? Então este é o tempo de reviravolta. Agora, se você adicionar essas cinco coisas e se você dividi-lo por arquivo, então nós estaremos recebendo a taxa média de tempo de resposta. Você pode computá-lo sozinho. É bem simples, certo? - Tudo bem. Agora, após o tempo de retorno, temos algo chamado “mesa de espera”. Agora, como nossa equipe de IO é 0 para cada processo, tempo de espera não é nada, mas transformou nosso próprio tempo menos estourando. Ok, tempo de retorno e é tempo de explosão que é 0, não há dez minutos termo burst que é nove, vire em torno deles e como estourando, que é tempo de resposta de arquivo menos estourar ele, que é novamente o arquivo turnaround Tempo menos tronco estourado, nada além de 11. Está bem? Então, novamente, se você adicionar todas essas cinco coisas e se você dividi-lo por cinco, você terá o tempo médio de espera. - Tudo bem. - Tudo bem. Agora calculamos o tempo médio de resposta, o tempo médio de espera. Agora precisamos calcular algo chamado comprimento não programado. Qual é a duração da programação? Começamos o agendamento, o que significa que nosso algoritmo de agendamento começou o processo de agendamento na unidade de tempo um. E era xy e inverso, e estava agendando a unidade de tempo 24, certo? Então, de um a 24, quanto, quantas unidades de tempo temos? 24 menos 1 é 23, certo? Então ela sabia que o comprimento não era nada além de 23 fã. Agora eles também tem algo chamado throughput. Sabemos o que a taxa de transferência de taxa de transferência não é nada além do número de processos executados por unidade de tempo, ok? Então o rendimento não é nada pássaro. Número de processos e número de processadores, nada além de phi. Ok, nós temos apenas processo de arquivo como dividendo fino, quando você deve alongar comprimento sombreado é 2, há 23, certo? Então a taxa de transferência não é nada, mas 58, 23. Ok, eu acho que é bem simples agora. Deveríamos estar mais confortáveis com isso. Ok, tudo bem.