<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Matheus Bratfisch &#187; Pascal</title>
	<atom:link href="http://www.matbra.com/tag/pascal/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.matbra.com</link>
	<description>&#34;Cogito ergo sum&#34;</description>
	<lastBuildDate>Tue, 20 Dec 2011 00:03:21 +0000</lastBuildDate>
	<language>pt</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Exercícios, Programação Concorrente.</title>
		<link>http://www.matbra.com/2009/05/28/exercicios-programacao-concorrente/</link>
		<comments>http://www.matbra.com/2009/05/28/exercicios-programacao-concorrente/#comments</comments>
		<pubDate>Thu, 28 May 2009 03:29:48 +0000</pubDate>
		<dc:creator>Matheus (X-warrior) Bratfisch</dc:creator>
				<category><![CDATA[Aprendendo]]></category>
		<category><![CDATA[Programação Concorrente]]></category>
		<category><![CDATA[Concorrencia]]></category>
		<category><![CDATA[exercicios]]></category>
		<category><![CDATA[fc]]></category>
		<category><![CDATA[Pascal]]></category>
		<category><![CDATA[programação]]></category>
		<category><![CDATA[resolução]]></category>

		<guid isPermaLink="false">http://www.matbra.com/?p=280</guid>
		<description><![CDATA[Boa noite, Amanhã tenho uma prova de Programação com o conteúdo, &#8220;monitores&#8221; e &#8220;redes de petri&#8221;. O professor passou uns exercícios para que fossem resolvidos e entregues, dos 5 resolvi apenas 3 até o momento. A linguagem utilizada para implementação dos mesmos foi Pascal FC (uma linguagem para ensinar &#8220;programação concorrente&#8221;). Bom, vamos a resolução [...]]]></description>
			<content:encoded><![CDATA[<p>Boa noite, </p>
<p>Amanhã tenho uma prova de Programação com o conteúdo, &#8220;monitores&#8221; e &#8220;redes de petri&#8221;. O professor passou uns exercícios para que fossem resolvidos e entregues, dos 5 resolvi apenas 3 até o momento. A linguagem utilizada para implementação dos mesmos foi <a href="http://www-users.cs.york.ac.uk/~burns/pf.html" target="_blank">Pascal FC</a> (uma linguagem para ensinar &#8220;programação concorrente&#8221;). Bom, vamos a resolução e enunciados dos mesmos. </p>
<blockquote><p>1) Pombos correio foram treinados para transportar cartas da cidade<br />
A para a cidade B. Na cidade A existe uma Caixa Postal onde as<br />
pessoas depositam suas cartas para que sejam entregues na cidade<br />
B. Os pombos consultam a Cxpostal e retiram sempre 5 cartas para<br />
transportar na sua viagem. Caso não existam ainda 5 cartas na<br />
caixa, o pombo espera até que esse número seja atingido. Na cidade<br />
B existe uma gaiola onde os pombos depositam suas cartas e ficam<br />
presos até que um processo tratador libere-os. O tratador verifica a<br />
gaiola a cada 20 clocks e libera todos os pombos somente se o<br />
número de pombos for maior ou igual a 2. Os pombos somente<br />
transportam cartas de A para B, na sua volta eles voam vazios.<br />
Construa um monitor para controlar a utilização da Caixa Postal<br />
pelas pessoas (13), pombos (6) e o tratador (1).
</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=282">Resolução do exercício sobre pombos.</a></p>
<blockquote><p>2) Implemente o problema dos fumantes utilizando monitor. Três<br />
fumantes e um agente sentados em uma mesa. Cada fumante<br />
possui dois dos três ingredientes para se fazer um cigarro: fósforo,<br />
fumo e palha. O agente possui os três e aleatoriamente sorteia um<br />
dos ingredientes. O fumante contemplado faz o seu cigarro, fuma e<br />
libera o agente para fazer novo sorteio.</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=283">Resolução do exercício sobre mesa de fumantes.</a></p>
<blockquote><p>3) Processos produtores e consumidores se sincronizam através de<br />
um buffer circular com 5 posições (um array de 5 posições). Um<br />
produtor gera um número aleatório e coloca no buffer caso exista<br />
uma vaga. Um consumidor retira um número do buffer se houver.<br />
Implemente utilizando monitor.</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=281">Resolução do exercício sobre sincronização através de array circular.</a></p>
<blockquote><p>4) Suponha um ambiente em que processos compartilham<br />
impressoras. Existem dois tipos de impressora: tipo A e Tipo B.<br />
Existem 3 classes de processos: classe PA que somente utilizam<br />
impressoras do tipo A, classe PB que somente utilizam impressoras<br />
do tipo B e classe PAB que utilizam impressoras de qualquer tipo.<br />
Esses processos, do tipo PAB, têm prioridade sobre os demais<br />
quando não houver impressoras disponíveis. Implemente utilizando<br />
monitor.</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=287">Resolução do exercício sobre impressoras.</a></p>
<blockquote><p>5) Implemente o problema da ponte utilizando monitor. Uma ponte,<br />
que separa duas cidades A e B, somente permite tráfego em um<br />
sentido de A para B ou de B para A. Se a ponte estiver vazia pode<br />
ser utilizada por carros de A ou de B. Se um carro de A acessou a<br />
ponte, ela é trancada para os carros de B e todos os carros de A que<br />
desejarem podem também acessar. Quando o último carro que sai<br />
de A para B deixar a ponte, ela deve ser liberada.</p></blockquote>
<p><a href="http://www.matbra.com/?attachment_id=288">Resolução do exercício sobre Ponte.</a></p>
<p><a href="http://www.matbra.com/?attachment_id=290">Lista dos 5 exercícios e sua resolução.</a></p>
<p>UPDATE 1: Exercícios que não estavam resolvidos foram resolvidos e adicionados. Lembro que o professor ainda não entrou uma correção do mesmo, mas testei eles e parece-me tudo ok.Lembrando também que estes exercícios foram disponibilizados aos alunos pelo Professor José Mazzucco Júnior. </p>
<p>Espero que isso seja util a todos,<br />
Matheus</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matbra.com/2009/05/28/exercicios-programacao-concorrente/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

