みおか

美丘

太一:

「俺…正直…今でも..どうしていいか分からない…
 いくら考えたって…答えなんか出ないよ…
 美丘の支えになれる自信だって..全然ない…
 でも…
 でも…たった一つだけ…決めたことがあるんだ…
 俺は…逃げない…
 絶対に美丘の前から…いなくならないずっと側にいる…
 絶対…独りぼっちになんか…しないから…
 たから…
 俺は…美丘と一緒にいたいんだ」…

美丘:

「本当…
 あたしの前から…いなくならない…
 ずっと側にいる…
 独りぼっちにしない…
 あたしがどうなっても…
 動くなくなっても…
 歩けなくなっても…
 あたしが…
 あたしが…太一君を…おいてっちゃっても」…

太一:

「側にいるよ…ずっと…
 俺は…美丘がもういいっていっても…ずっと側にいる」…

喜欢这种类型的日剧。。期待9/4日最终回。。。

miwa – Change

 
なびかない流されないよ [不能随波逐流]
Nabikanai nagasarenaiyo
今、感じる事に素直でいたいの
Ima kanjiru koto ni sunao de itai no
Change
何度でも生まれ変わるの [无论多少次都要重生]
Nando demo umarekawaruno
悲しみも抱きしめて [拥抱悲伤]
Kanashimi mo dakishimete
走り出すよ [迈步向前]
Hashiridasuyo
楽しい裏切りにあって [即便有悲伤的背叛]
Kanashi uragiri ni atte
囚われないあたしが此処にいるの [我也不会被其动摇]
Torawarenai atashi ga koko ni iru
足りない尽きない何だって [还不够]
Tarinai tsukinai nandatte
もっと歪ませてよ [永无止境的扭曲变形吧]
Motto hizumasete yo
パターン化したこんな世界じゃ [在这种模式化的世界中]
(Takaru) Okashi konna sekai jan
自分が谁なのか分からなくなる [会逐渐搞不清自己究竟是谁]
Jibun ga dare nanoka wakaranakunaru
枠にハマりたくないわ [不想为自己设置框架]
Wafuu ni hanaritakunai ka
决めつけないでよ [不要替我决定
Kimetsukenai de yo
路无き路を行くの [绝地逢生 任务独行]
Uchi dake michi wo yuku no
そこにいたって待っていたって [原地踏步 盲目等待]
Soko ni itatte, matte itatte
何も始まらない [根本无所适从]
Nani mo hajimarenai
Change
なびかない流されないよ [不能随波逐流]
Nabikanai nagasarenaiyo
今、感じる事に素直でいたいの [直率的表达现在的感受]
Ima kanjiru koto ni tsunao de itai no
谁かの思い通りにはさせないわ[不要重复任何人的道路]
Dareka no omoi-doori ni wa sasenai wa
Change
何度でも生まれ変わるの [无论多少次都要重生]
Nando te mo umarekawaruno
悲しみを抱きしめて [拥抱悲伤]
Kanashimi mo dakishimete
走り出すよ [迈步向前]
Hashiridasuyo
あなたの元にはもう帰れないわ[我已经无法回到你的怀抱]
Anata no moto ni wa Mou kaerinai wa
あたしはあたしらしくI wanna chAngE[我要进行适合自己的改变]
Atashi wa atashi rashiku
I WANNA CHANGE

PIC-8259A一些比较难理解的概念

个人觉得《Linux内核完全剖析》中对于8259A(可编程中断控制器)的说明不是很到位(P240),而且书中并没有把8259A的工作方式说明清楚。许多概念穿插在一起,很容易让像我这样的初学者晕菜。以下是网上找到的资料,加以整理,以供将来参考。
 
  • IRR:中断请求寄存器(Interrupt Request Register)该寄存器的8位(D7~D0)分别存放IR7~IR0输入线上的中断请求。当某输入线有请求时,IRR对应位置1,该寄存器具有锁存功能。
  • ISR:当前中断服务寄存器(In Service Register)该寄存器用于存放正在被服务的所有中断级,包括尚未服务完而中途被别的中断打端了的中断级。
  • PR:优先级裁决器(Priority Resolver) 当IR输入线上有请求时,IRR对应位置1,同时,PR将该中断的优先级与ISR中的优先级比较,若该中断的优先级高于ISR中的最高优先级,则PR就使INT信号变为高电平,把该中断送给CPU,同时,在ISR相应位置1。否则,PR不为该中断提出申请。
8259A的工作方式
8259A对中断的管理涉及多个方面,因此它有多种工作方式,如中断嵌套方式、优先级管理方式、中断结束方式、中断屏蔽方式等。由于8259A是一个可编程的芯片,所以这些方式都可以通过编程方法设置,用户可根据自己的需要选择相应的工作方式。
编程角度看8259A
用户(程序员)在使用一个可编程接口或控制芯片时,一般是从编程角度看,对8259A也是如此,它有10个可编程寄存器,可分成两组。一组是在内部结构框图中明显表示的,它们是中断请求寄存器IRR、中断屏蔽寄存器IMR和正在服务寄存器ISR。这3个寄存器的作用前面已经介绍了。另一组在内部结构框图中没有被表示,属于内部寄存器,它们是4个初始化命令寄存器和3个操作命令寄存器。初始化命令寄存器用来存放初始化命令字,4个初始化命令字分别为ICW1~ICW4(Initial Command Word)。在对8259A进行初始化编程时,要根据需要写入相应的初始化命令字。一旦初始化完成,8259A就按照这些初始化命令字来管理外部的8级中断。在8259A工作期间,可通过操作命令字对它进行必要的干预,使其改变某方面的工作方式。操作命令字有三种:OCW1~OCW3(Operation Command word),它们被存放在操作命令寄存器中。
中断嵌套方式
8259A的嵌套方式有两种:一般全嵌套方式和特殊全嵌套方式。
  • 一般全嵌套方式:一般全嵌套方式是8259A最常用和最基本的一种嵌套方式,如果对8259A初始化后没有用操作命令字设置为其他嵌套方式,则8259A就自动按一般全嵌套方式工作。在这种方式下,在为某中断服务期间禁止同级和较低级的中断请求,而较高级的中断请求仍可经INT端向CPU提出。
  • 特殊全嵌套方式:特殊全嵌套方式与一般全嵌套方式的区别在于:在为某中断服务期间不禁止同级的中断请求,即允许同级的和较高级的中断进入。这种方式所要解决的问题是:在多片级联的情况下,当某从片的中断得到响应、进入中断服务期间,来自该从片的更高级的中断请求仍能为主8259A所识别(对主8259A来说,同一从8259A的8个中断都是一个级别),并向CPU提出请求。所以,在级联的情况下,主片应设置为特殊全嵌套方式,从片一般设置为一般全嵌套方式。
优先级方式
  • 固定优先级:这是大多数应用中采用的优先级方式。在该方式下,各中断源的优先级是固定的:IR0最高,IR1次之,然后依次降低级别。
  • 优先级自动循环方式:在该方式下,某一中断源的请求被响应后,其优先级自动降为最低,其他中断源的优先级也随之改变。例如,IR4提出请求并得到响应后,自动降为最低优先级,IR5变为最高优先级,优先级从高向低依次为:IR5、IR6、IR7、IR0、IR1、IR2、IR3、IR4。8259A设置为优先级自动循环方式后,最初的优先级是:IR0最高、IR7最低,其他依次类推。该方式适用于系统中多个中断源的优先级相等(难以分清它们的级别)的情况,使得各中断源的请求得到响应的机会均等。
  • 优先级特殊循环方式:该方式是通过编程(OCW2)人为地指定某个中断源的优先级降为最低,其他中断源的级别也随之改变。
中断结束方式
当某一个中断请求被CPU响应后,该中断在ISR中的相应位被置位,表示CPU正在为该中断服务。在中断服务结束、中断返回之前的适当时刻应将该ISR位复位,否则8259A就不能响应该中断源新的请求。这项工作称为中断结束处理。中断结束的方式分自动结束和非自动结束两种,而非自动结束方式又有一般中断结束和特殊中断结束之分。
  • 自动中断结束方式:该方式需要通过ICW4设置。设置成该方式后,对每一个中断,在中断响应时(对8086/8088,是在第二个中断响应周期的INTA的后沿时),由8259A自动将ISR对应位清除。当然,为该中断的服务并不因此而受到影响。这种方式是为没有经验的程序员忘了在中断服务程序中给出中断结束命令而设立的。
  • 一般中断结束方式:这种方式配合一般全嵌套方式使用。采用这种方式反映在程序中是在具体的中断服务已做完、返回之前向8259A发一个一般中断结束命令,8259A就将ISR中当前已置l的最高位复位。因为在一般全嵌套方式下,ISR中当前已置1的级别最高的位对应了最后一次被响应和被处理的中断,也就是当前正在处理的中断,所以,将该位复位相当于结束了当前正在处理的中断。
  • 特殊中断结束方式:在特殊全嵌套方式下,不能确定ISR中哪一位是最后置位的,即哪一个中断请求是最后被响应的,这时就要采用特殊中断结束方式。采用这种方式反映在程序中就是要发一条特殊中断结束命令,这个命令中指出了要清除哪个ISR位。特殊中断结束方式可理解成人为地将ISR中某一位复位。而一般中断结束方式要复位的ISR位是8259A自动寻找的。
在此,对级联系统中的从片的中断结束处理作一些说明。在将主片设置成特殊全嵌套方式的情况下,从片可能出现中断嵌套,在从片的某中断服务结束时,必须用软件检查被服务的中断是否为该从片惟一的中断。为此,先向从8259A发一个一般的中断结束命令,清除已完成服务的ISR中优先级最高的位,然后再读出ISR的内容,检查它是否为0,如果为0(判断从片中是否是嵌套中断),则向主8259A发一个中断结束命令,清除(主8259A)ISR中与该从片相对应的位(这一步不能忘记);如果从8259A的ISR的内容不为0,则不向主8259A发中断结束命令,该中断返回后,CPU继续为该从片被打断的中断服务。
屏蔽中断源的方式   
8259A有两种屏蔽中断源方式:普通屏蔽方式和特殊屏蔽方式。前者用得较多,后者仅用于一些特殊应用场合。
  • 普通屏蔽方式:在普通屏蔽方式下,将中断屏蔽寄存器IMR的某位置1,则它所对应的中断就被屏蔽,从而使这个中断请求不能由8259A送到CPU。如果IMR某位置0,则允许该中断起作用。
  • 特殊屏蔽方式:有些应用场合,希望一个中断服务程序能动态改变系统的优先权结构。例如,在执行中断服务程序的某一部分时,希望禁止较低级的中断请求,而在执行中断服务程序的另一部分时,又能够开放比本身级别低的中断。为达到这样的目的,自然会想到使IMR中本身对应的位置1,使本级中断受到屏蔽,从而为开放较低的中断提供可能。但是,这样做有一个问题:每当一个中断请求被响应时,就会使ISR对应位置1,只要没有发出中断结束命令,8259A就会禁止所有比它低的中断。所以,尽管当前处理的较高级的中断被屏蔽,但由于ISR位未被复位,较低级的中断请求在发出中断结束命令之前仍然不会得到响应。引进了特殊屏蔽方式。设置了此方式后,使IMR某位置1,就会同时使ISR的相应位复位。这样,可真正开放级别较低的中断。当然未被屏蔽的更高级中断也可以得到响应。